暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MySQL FAQ:解决BLOB, TEXT, GEOMETRY ...can’t have default value

原创 liaju 2021-11-20
4910

背景

在migration的时候,有一个库建表失败,查询log显示:”BLOB, TEXT, GEOMETRY or JSON column ‘description’ can’t have a default value”,

解释

报错原因:blob,text等字段类型不能设置default ‘xxxx’默认值

好奇不同的实例,同样的sql语句,有的实例可以执行,有的不能.开始以为是5.7的特性,后来dba清空了sql_mode设置就好了.

总结

上述报错的原因在于:

  • MYSQL5.x是不允许BLOB/TEXT类型的字段拥有默认值的
  • 由于mysql是在’strict mode’严格模式下工作的,如果改为非严格模式,上面的语句就可以执行成功

所以解决方案:

  • mysql.配置文件注释sql-mode
  • 重启mysql服务
#sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 
最后修改时间:2021-11-20 18:22:20
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论