SELECT DATABASE();
CREATE TABLE employe(id INT ,NAME VARCHAR(20) NOT NULL); #在创建表的时候就进行约束
SELECT *FROM employe;
INSERT INTO employe(id,NAME)VALUE(33,NULL);
INSERT INTO employe(id,NAME)VALUE(33,"liuzeyu");
ALTER TABLE employe MODIFY NAME VARCHAR(20) ; #修改为name值可为null
ALTER TABLE employe MODIFY NAME VARCHAR(20) NOT NULL; #创建表之后修改为name值可为not null
此时会出现一个错误:
这个问题待解决请指教。
最后是通过度娘解决了这个问题:
UPDATE employe SET NAME=0 WHERE NAME IS NULL;
然后就可以创建表之后修改为name值可为not null,至于为什么将空值替换成0作为初学者表示没看懂。
而且我操作完这一条语句后,创建其它的表执行类似上述的操作再也没遇到1265错误代码了,为什么呢?