如何给属性添加自定义约束

lijong29909 2005-10-08 02:35:13
建表时想给某属性增加自定义属性,如限制sex属性只能值只能为0或者1
我的语句
create table table_name (id int auto_increment,sex char(1) check('0','1'));
正常建表
可以当我插入记录时,该约束没有生效,该怎么办?谢谢!
...全文
148 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lijong29909 2005-10-09
  • 打赏
  • 举报
回复
3ks
hy2003fly 2005-10-08
  • 打赏
  • 举报
回复
不好意思,漏了半边括号.应该是:
mysql>create table table_name (id int auto_increment,sex enum ('0','1'));

mysql>create table table_name (id int auto_increment,sex set ('0','1','2'));
hy2003fly 2005-10-08
  • 打赏
  • 举报
回复
可以用:
mysql>create table table_name (id int auto_increment,sex enum('0','1');
enum类型可以包含列于集合允许成员中的惟一的值或null值.
即是只接受0和1,其他非法的值都变成空,什么都没有;而插入值为null,显示也为null.
mysql>create table table_name (id int auto_increment,sex ('0','1','2');
set类型允许从预先定义的字符串值集合中选取任意数目的值.
即是可以接受:0;0,1;1,2.即字符0,1,2的任意组合.

56,677

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧