SQL CHECK 约束

CHECK 约束用于限制列中的值的范围。
如果对单个列定义 CHECK 约束,那么该列只允许特定的值。
如果对一个表定义 CHECK 约束,那么此约束会在特定的列中对值进行限制。


SQL CHECK CONSTRAINT ON CREATE TABLE
在 “PHONE” 表创建时为 “PHONENUMBER” 列创建 CHECK 约束。CHECK 约束规定 “YEAR” 列必须只包含大于2005 的整数
My SQL

CREATE TABLE PHONE(PHONENUMBER NUMBER(11) NOT NULL PRIMARY KEY,PHONETYPE VARCHAR2(20) NOT NULL,YEAR NUMBER(4),CHECK(YEAR>2015))

SQL Server / Oracle / MS Access

CREATE TABLE PHONE(PHONENUMBER NUMBER(11) NOT NULL PRIMARY KEY,PHONETYPE VARCHAR2(20) NOT NULL,YEAR NUMBER(4) CHECK(YEAR>2015))

如果需要命名 CHECK 约束,以及为多个列定义 CHECK 约束


SQL CHECK CONSTRAINT ON ALTER TABLE
如果在表已存在的情况下为 “YEAR” 列创建 CHECK 约束
MySQL / SQL Server / Oracle / MS Access

ALTER TABLE PHONE ADD CHECK(YEAR>2005)

如果需要命名 CHECK 约束,以及为多个列定义 CHECK 约束
MySQL / SQL Server / Oracle / MS Access

ALTER TABLE PHONE 
ADD CONSTRAINT CHK CHECK (YEAR>2005 AND YEAR<=2017)

撤销 CHECK 约束
如需撤销 CHECK 约束
SQL Server / Oracle / MS Access

ALTER TABLE PHONE
DROP CONSTRAINT CHK

MySQL

ALTER TABLE PHONE
DROP CHECK CHK
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值