为什么我的CHECK控件无效?我正在使用似乎无效的支票

时间:2019-09-26 21:47:10

标签: mysql sql mysqlcheck

我正在为一个大学项目创建一个数据库。我的数据库中有几个带有检查条件的表,但是它们似乎没有作用。我正在使用MySQL。

我查阅了我发现的所有资源,就语法和检查的使用而言,在我看来一切都是正确的。

这是在我的数据库中检查不成功的示例:

CREATE TABLE IF NOT EXISTS coltraneShop.Product (
  `Product code` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  `Category` CHAR(9) NOT NULL CHECK(`Category`='DVD' OR `Category`='Album' OR `Category`='Comics' OR `Category`='Book' OR `Category`='Videogame'),
  `Title` VARCHAR(50) NOT NULL,
  `Quantity` INT(3) UNSIGNED NOT NULL, 
  `Year of publication` INT(4) UNSIGNED NOT NULL,
  `Price` DECIMAL(6,2) UNSIGNED NOT NULL,
  `Shipment's name` CHAR(13) NOT NULL
);

例如,如果我尝试插入具有“ hello”类别的产品,则该产品会被接受并插入数据库中,但是此操作会产生错误。

非常感谢!

0 个答案:

没有答案
相关问题