0
我正在创建一个如下所示的表格。NOT NULL检查不起作用
create table modifications (
id bigint(20) AUTO_INCREMENT not null primary key,
type varchar(100),
user_id bigint(20) null,
vulnerability_id bigint(20) null
)
alter table modifications
add constraint fk_user_id foreign key (user_id) references app_user(id)
alter table modifications
add constraint fk_vulnerability_id foreign key (vulnerability_id) references vulnerabilities(id)
alter table modifications
add constraint ck_OneIsNotNull check (user_id is not null or vulnerability_id is not null)
alter table modifications
add constraint ck_OneIsNull check (user_id is null or vulnerability_id is null)
我的目标是其中一列应该为空,另一个不应该为空。但是,当我插入null或非null时,它将接受而不抛出错误。这是我使用的插入查询。
insert into modifications (type,user_id,vulnerability_id) values('vulnerability',16,65)
insert into modifications (type) values('vulnerability')
我哪里出错了?
如果你粘贴错误,它也会有帮助。 – 2016-04-29 03:37:06
我没有收到任何错误。它正在插入。 – Rajesh