• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

关于MYSQL 检察check约束

mysql 搞代码 4年前 (2022-01-09) 21次浏览 已收录 0个评论

关于MYSQL 检查check约束 MYSQL 目前版本貌似不支持 SQL标准的 检查约束(check); SQL如: ALTER TABLE emp ADD CONSTRAINT ck_emp_sex CHECK (sex =’男’ OR sex=’女’); ? CHECK子句会被分析,但是会被忽略。请参见13.1.5节,“CREATE?TABLE语法”。接受这

关于MYSQL 检查check约束

MYSQL 目前版本貌似不支持 SQL标准的 检查约束(check);

SQL如:

ALTER TABLE emp ADD CONSTRAINT ck_emp_sex CHECK
(sex =’男’ OR sex=’女’);

?

CHECK子句会被分析,但是会被忽略。请参见13.1.5节,“CREATE?TABLE语法”。接受这些子句但又忽略子句的原因是为了提高兼容性,以便更容易地从其它SQL服务器中导入代码,并运行应用程序,创建带参考数据的表。请参见1.8.5节,“MySQL与标准SQL的差别”。

?

但使用过程往往需要MYSQL 提供类似check约束的DDL语句;

?

可以使用SQL枚举值:

ALTER TABLE emp MODIFY sex ENUM(“男”,”女”);

?

1 查询雇员表:

SELECT * FROM emp;

empno? ename???????? deptno? sal?? sex?
1????? 张三??????? 10????? 2000? 女?
2????? 李四??????? 10????? 3000? 男?
3????? xiaohong????? 10????? 4000? 男?
4????? 杨国??????? 10????? 5000? 男?
5????? 苏三??????? 20????? 8000? 男??本文来源gaodai$ma#com搞$$代**码网
?

2 修改雇员编号1 的性别为 人妖;

UPDATE emp SET sex =’人妖’ WHERE empno =1 ;?

?

执行结果:

(1 row(s) affected, 1 warning(s))
Execution Time : 00:00:00:156
Transfer Time? : 00:00:00:000
Total Time???? : 00:00:00:156

Note : To see complete list of warning(s), enable Tools -> Preferences -> General -> Show Warning(s) in Messages Tab

?

3 再次查询

empno? ename???????? deptno? sal?? sex?
1????? 张三??????? 10????? 2000??????
2????? 李四??????? 10????? 3000? 男?
3????? xiaohong????? 10????? 4000? 男?
4????? 杨国??????? 10????? 5000? 男?
5????? 苏三??????? 20????? 8000? 男?

雇员编号为1 的张三 性别为 空;

?

4 插入语句

INSERT INTO emp VALUE (‘张飞’, 10, 3000, ‘人妖’);

?

Query : insert into emp value (‘张飞’, 10, 3000, ‘人妖’)
Error Code : 1136
Column count doesn’t match value count at row 1
Execution Time : 00:00:00:000
Transfer Time? : 00:00:00:000
Total Time???? : 00:00:00:000

?

报错切插入失败!

?

?

?

?

?

?

?

?

1 楼 fanjf 11 小时前 为什么 update 不报错,结果为空?


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:关于MYSQL 检察check约束

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址