oracle中使用CHECK作限制约束

 Oracle提供了一个很有用的子句CHECK,它可以实现对数据的自动检查。它的用法是在创建表结构时使用。如:

     Create   table    worker
     (      empno        number(4)    primary   key,
            name         varchar2(10),
            age          number(2)   CHECK(age   between  18   and   65 ),
            /* age          number(2)   CHECK( age >=18 and age<=65 ) */
            lodging      char(15)    References    LODGING(lodging)
     );

     Create   table    emp3
       (   empno         number(4)  constraint abc   primary     key,
           ename         varchar2(10),
           job           varchar2(10),
           sex           char(2) check ( sex=‘男’ or sex= ’女’),
           mgr           number(4),
           hiredate      date,
           sal           number(7,2), /* 工资 */
           comm          number(7,2), /* 奖金 */
           deptno        number(2),
           CHECK      ( sal+comm >0  and  sal+comm<=5000 )
      );

建议:在设计数据库表结构时,建议你分析用户的数据的取值范围,从而将那些取值范围一定的字段用CHECK进行描述。以保证以后数据的正确性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值