如果我使用
为什么?更重要的是,如何在日期列上保持唯一约束,即使它们可能为空(并且必须保持 DATE 类型)?
以下 SQL 语句可以多次执行:
NULLABLE
列设置唯一键索引,我可以插入任意多行:create table routes (
id bigint(20) NOT NULL AUTO_INCREMENT,
firstname varchar(255) NOT NULL,
lastname varchar(255) NOT NULL,
departure DATE DEFAULT NULL,
returndate DATE DEFAULT NULL,
PRIMARY KEY (id),
UNIQUE KEY uniq (firstname, lastname, departure)
)
为什么?更重要的是,如何在日期列上保持唯一约束,即使它们可能为空(并且必须保持 DATE 类型)?
以下 SQL 语句可以多次执行:
INSERT INTO `routes` (`firstname`, `lastname`, `departure`, `returndate`)
VALUES (NULL, 'john', 'doe', NULL, NULL);