我试图在mySQL中删除以下检查约束:
约束music_artist_genre_name_ck检查(genre_name in('Country','Hip Hop','Jazz','Pop','Rock')
我已经尝试过命令
ALTER TABLE music_artist DROP CHECK music_artist_genre_name_ck;
我很难理解为什么这不起作用。有人可以给我正确的命令来放弃支票。
答案 0 :(得分:0)
在MySQL中忽略CHECK约束定义。
示例:
create table check_test (
val int,
constraint my_check check (val in (0, 1))
);
show create table check_test;
结果是:
CREATE TABLE `check_test` (
`val` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8
演示:http://rextester.com/MAZG17623
如您所见,没有CHECK约束,因此无需删除。