MSSQL 列约束(check) 简介


一、mssql 列约束(check) 简介

mssql 列约束(check):功能 对表(table)中列的值进行约束,可以限制此大于某一个数或小于某一个数,或只允许特定值 或小于某一个列

应用场景:
例:入库明细数据,禁止数量小于0
库存明细表 进行当前库存数量小于当前批次入库数量



二、 mssql 列约束(check) 使用举例

2.1 添加约束语法

   /*with nocheck 不验证历史数据是否符合约束 验证[列名1]必须大于100  [列名2]必须等于字符a */
   alter table [表名] 
  WITH NOCHECK
   add constraint [约束名] check([列名1]>100 and [列名2] ='a') 
  go
 ----------------------------------------------------------
 alter table [表名] 
  add constraint [约束名] check([列名1]>100 and [列名2] ='a') 
  go

2.2 删除约束语法

 alter table [表名] 
  drop constraint [约束名]

2.3 举例添加约束

  create table A(keyId int PRIMARY KEY  ,info varchar(60) not null , writeDate datetime)
   go 
  insert into A values (1,'a','2017-1-1'),(2,'b','2017-1-2'),(3,'c','2017-1-3')
  go  
  /* 
  alter table A 
  add constraint chk_a check(keyId>100 and info ='a') 
  go
  */
  /*添加约束 不对历史数据进行验证*/
  alter table A 
  WITH NOCHECK
    add constraint chk_a check(keyId>100 and info ='a') 
  go
  
 truncate table A
 drop     table A 

相关阅读:
MSSQL 外键 简介
MSSQL 主键 简介
sql alter table 关键字简介
sql index 关键字简介
sql create view 关键字简介
sql create table 关键字简介
mssql create database关键字简介
sql select into关键字简介
sql union union all
sql full join关键字简介
sql right join关键字简介
sql left join关键字简介
sql inner join关键字简介
sql join(连接)关键字简介
sql as 关键字简介
sql between 关键字简介
sql in 关键字简介
sql like 关键字简介及应用
sql top 关键字简介
sql delete 关键字简介
sql update 关键字简介
sql insert into 关键字简介及用法
sql order by 关键字用法
sql and or 关键字简介
sql where 关键字简介
sql select distinct top 关键字简介
sql select
sql简介
sql 删除重复数据
如果查询MSSQL中重复列(group by having count)