Drop Check命令不起作用MYSQL

时间:2018-03-25 17:16:23

标签: mysql

我试图在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;

我很难理解为什么这不起作用。有人可以给我正确的命令来放弃支票。

1 个答案:

答案 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约束,因此无需删除。