windows下mysql创建表时报错

今天在学习sql语句时发现一个问题,我的mysql是安装在windows上的(因为没有linux服务器,所以就在windows上玩了起来),我是要创建一个cats表,sql语句如下:


use sqldb

create table cats(

id int not null auto_increment,

pid int not null default '0',

name varchar(60) not null default '',

desn text not null default '',

primary key(id),

index name(name,pid),

);

执行的时候报了一个错误:

ERROR 1101 (42000): BLOB/TEXT column can’t have a default value

以前都是在linux下执行的,没有出现过这种问题,于是百思不得其解啊,最后经过努力找到了解决方法:在mysql配置文件my.ini中注释sql-mode=”STRICT_TRANS_TABLES, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION”,然后重启mysql就可以解决!

原因是因为mysql5.x版本在windows下默认是以strict mode工作的。


你可能感兴趣的:(windows,mysql创建表时报错)