重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
alter table 表名 modify 列名 not null;
创新互联公司专业为企业提供阿拉尔网站建设、阿拉尔做网站、阿拉尔网站设计、阿拉尔网站制作等企业网站建设、网页设计与制作、阿拉尔企业网站模板建站服务,十多年阿拉尔做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
你在建表时使用not null即可做到限制‘’这种空串的插入了。
‘’和null虽然本质上不一样,但‘’读到数据库时是被当做null处理的。
空字符串 "" 并不是 NULL, 所以会成功.要阻止的话在程序里面阻止而不是在MySQL里. 另外, inert into hh() values() 你写错了, 你换成insert一样会成功.
你这样设置之后,是不能插入的空(NULL),而是能插入空串(\\'\\')。
如果不让插入空串,应该使用check,例如:
CREATE TABLE table2 (
title varchar(50) NOT NULL,
message varchar(200) NOT NULL DEFAULT \\'内容\\',
msname varchar(50) NOT NULL DEFAULT \\'发布人\\',
date date NOT NULL,
PRIMARY KEY (`title`) ,
CHECK (title!=\\'\\')
) ;
可以这样写SQL:
update tableName set colName='' where colName is null;
前提是没有约束限制向表字段写入“空字符串”