解决BLOB/TEXT column can't have a default value query问题

转载自:http://www.sharkuo.com/BLOB-TEXT-column-cannot-have-a-default-value-querymysql

Create table的时候,报错BLOB/TEXT column 'xxxxxx(表名称)' can't have a default value query,意思是TEXT类型的表字段不可以有默认值。sql

搜索到不少解决方案都是将windows

description TEXT DEFAULT 'www.sharkuo.com', 改成 description TEXT,code

缘由在于:ip

一、  MYSQL5.x是不容许BLOB/TEXT类型的字段拥有默认值的。io

二、  因为MYSQL是在‘strict mode’严格模式下工做的,若是改成非严格模式,上面的语句就能够执行成功table

三、  MYSQL5.x在windows下是默认以‘strict mode’工做的,当执行上面的语句时,会给你一个错误或者警告信息sql语句

解决方法:搜索

一、  找到mysql安装根目录下的my.ini文件方法

二、  找到这样一行:
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

三、  在其前面加‘#’将其注释掉:

#sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

四、  重启mysql服务

五、  从新执行你的mysql语句

相关文章
相关标签/搜索