MySql默认值为Null
作者:互联网
我有下表
CREATE TABLE `Foo` (
`id` int NOT NULL ,
`FirstName` varchar(255) NULL ,
`LastName` varchar(255) NOT NULL DEFAULT 'NONE' ,
PRIMARY KEY (`id`)
);
当我运行以下查询时,它采用默认值= NONE
INSERT INTO Foo ( `FirstName`) VALUES('FOO');
当我运行以下查询时
INSERT INTO Foo ( `FirstName`, `LastName` ) VALUES('FOO', NULL);
它给出了一个错误
`[Err] 1048 - Column 'LastName' cannot be null`
我想如果值为NULL,那么mysql应该使用默认值..任何更新?
解决方法:
试试这个
使用NULL而不是NOT NULL
CREATE TABLE `Foo` (
`id` int NOT NULL ,
`FirstName` varchar(255) NULL ,
`LastName` varchar(255) NULL DEFAULT 'NONE' ,
PRIMARY KEY (`id`)
);
和这样的查询
使用DEFAULT而不是NULL
INSERT INTO Foo ( `FirstName`, `LastName` ) VALUES('FOO', DEFAULT);
标签:mysql,default-value 来源: https://codeday.me/bug/20190910/1799302.html