mysql数据库的test类型
⽂章参考⾃
背景
公司的数据库规范是,每个字段必须not null 且必须有默认值
问题
设置为test类型后,字段不能设置默认值
解决(不建议取消)mysql查询数据语句
取消数据库的严格模式
*********windows下**********
1、到mysql安装根⽬录下的my.ini⽂件
2、到这样⼀⾏:
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
3、在其前⾯加‘#’将其注释掉:
#sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
4、重启mysql服务
5、重新执⾏你的mysql语句
*************linux下*************
⽅法⼀、
1)修改myf1、设置启动参数,将默认sql_mode改为宽松模式使⽤命令:
echo "sql-mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" >> /etc/myf
或⼿动修改:
vi /etc/myf
到sql-mode关键字,若没有,在⽂件尾添加⼀⾏
替换成:
sql-mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTIO
2)重启mysql
service mysqld restart
⽅法⼆、修改启动脚本
1)设置启动脚本参数使⽤命令:
sed -i "s#\"\$\*\"#--sql-mode=\"NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION\"#" /etc/init.d/mysqld
或⼿动修改: vi /etc/init.d/mysqld 到 other_args="$*"
改成 other_args="--sql-mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
2)重启mysql
service mysqld restart
maven是原因
中华人民共和国主席1、 MYSQL5.x是不允许BLOB/TEXT类型的字段拥有默认值的。mysql语句分类
2、由于MYSQL是在‘strict mode’严格模式下⼯作的,如果改为⾮严格模式,即可
3、 MYSQL5.x在windows下是默认以‘strict mode’⼯作的,当执⾏上⾯的语句时,会给你⼀个错误或者警告信息
但是严格模式为什么不能设置默认值的真正原因还不知道
avalonedit语法检查拓展
I. Strict Mode阐述
根据 mysql5.0以上版本 strict mode (STRICT_TRANS_TABLES) 的限制:
1).不⽀持对not null字段插⼊null值
2).不⽀持对⾃增长字段插⼊''值,可插⼊null值
python爬虫环境实验报告3).不⽀持 text 字段有默认值
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论