SQLServer之修改CHECK约束
使用SSMS数据库管理工具修改CHECK约束
1、打开数据库,选择数据表-》右键点击-》选择设计(或者展开约束,选择约束,右键点击,选择修改,后面步骤相同)。


2、选择要修改的数据列-》右键点击-》选择CHECK约束。

3、在CHECK约束弹出框中-》选择要修改的约束-》输入约束表达式-》输入约束名和约束描述-》选择表设计器规则-》点击关闭。

4、点击保存按钮(或者ctrl+s)-》刷新表查看修改结果。

使用T-SQL脚本修改CHECK约束
CHECK约束修改规则必须首先删除现有的CHECK约束,然后使用新定义重新创建,才能使用Transact-SQL修改CHECK约束。
语法:
--修改check约束
use 数据库名
go
--如果约束存在则先删除
if exists(select * from sysobjects where name=约束名)
alter table 表名 drop constraint 约束名;
go
--添加约束
alter table 表名
--with check --该约束是否应用于现有数据,with check表示应用于现有数据,with nocheck表示不应用于现有数据
add constraint 约束名
check
not for replication --当复制代理在表中插入或更新数据时,禁用该约束。
(约束表达式);
go
--向表中添加新数据或更新表中现有数据时是否禁用该约束。check表示校验,nocheck表示不校验
--alter table 表名
--check
--constraint 表名;
--go
--添加check约束描述
execute sp_addextendedproperty N'MS_Description', N'约束描述', N'SCHEMA', N'dbo', N'TABLE', N'表名', N'CONSTRAINT', N'约束名';
go
示例:
--修改check约束
use testss
go
--如果约束存在则先删除
if exists(select * from sysobjects where name='u_check2')
alter table test1 drop constraint u_check2;
go
--添加约束
alter table test1
--with check --该约束是否应用于现有数据,with check表示应用于现有数据,with nocheck表示不应用于现有数据
add constraint u_check2
check
not for replication --当复制代理在表中插入或更新数据时,禁用该约束。
(height>=100 and height <=200);
go
--向表中添加新数据或更新表中现有数据时是否禁用该约束。check表示校验,nocheck表示不校验
--alter table test1
--check
--constraint u_check2;
--go
--添加check约束描述
execute sp_addextendedproperty N'MS_Description', N'修改约束', N'SCHEMA', N'dbo', N'TABLE', N'test1', N'CONSTRAINT', N'u_check2';
go


CHECK约束修改优缺点
优点:
1、修改数据库CHECK约束可以保证数据的规范性和完整性。
缺点:
1:修改约束的表设计器使用规则时,可能会引起原有数据与约束的冲突。
SQLServer之修改CHECK约束的更多相关文章
- SQLServer之修改UNIQUE约束
使用SSMS数据库管理工具修改UNIQUE约束 1.连接数据库,选择数据表->右键点击->选择设计(或者展开键,选择要修改的键,右键点击,选择修改,后面步骤相同). 2.选择要修改的数据列 ...
- SQLServer之修改DEFAULT约束
使用SSMS数据库管理工具修改DEFAULT约束 1.连接数据库.选择数据表->右键点击->选择设计. 2.在表设计器窗口->选中要修改的数据列->在列属性中找到默认值绑定-& ...
- 约束4:唯一约束,Check约束和null
大家知道,关系型数据库的逻辑运算的结果是三值型的,TRUE,FALSE和UNKNOWN,特别是,NULL值和任何值都不相等,任何值和NULL的比较,返回的逻辑结果都是unknown.而NULL值在唯一 ...
- SQLServer之CHECK约束
CHECK约束添加规则 1.CHECK 约束用于限制列中的值的范围. 2.Check约束通过逻辑表达式来判断数据的有效性,用来限制输入一列或多列的值的范围,在列中更新数据时,所要输入的内容必须满足Ch ...
- SQLServer 中有五种约束, Primary Key 约束、 Foreign Key 约束、 Unique 约束、 Default 约束和 Check 约束
一直在关注软件设计方面,数据库方面就忽略了很多,最近在设计数据库时遇到了一些小麻烦,主要是数据库中约束和性能调优方面的应用,以前在学习 Sql Server 2000,还有后来的 Sql Server ...
- SQLServer Alter 修改表的列名的解决
解决:在SQLServer中修改表的列名,可以调用存储过程sp_rename. [sql]use Test;--使用数据库 sp_rename 'd_s_t.avg_grade','avg_g',' ...
- oracle 序列 ,check约束
====================序列 //查询当前用户序列 select * from user_sequences //查询所有序列 select * from all_sequences; ...
- [SqlServer]SQL Server创建约束图解
SQLServer 中有五种约束, Primary Key 约束. Foreign Key 约束. Unique 约束. Default 约束和 Check 约束,今天使用SQL Server2008 ...
- SQL Server中使用Check约束提升性能
在SQL Server中,SQL语句的执行是依赖查询优化器生成的执行计划,而执行计划的好坏直接关乎执行性能. 在查询优化器生成执行计划过程中,需要参考元数据来尽可能生成高效的执行计划, ...
随机推荐
- BBS论坛(三十三)
33.celery实现邮件异步发送 (1)task.py pip install celery redis from celery import Celery from flask import Fl ...
- zabbix系列之十——添加短信告警
zabbix添加短信告警 1.查看zabbix-server脚本存放路径: [root@GYQ-Prod-Zabbix ~]# grep AlertScriptsPath /etc/zabbix/za ...
- Kafka从入门到进阶
1. Apache Kafka是一个分布式流平台 1.1 流平台有三个关键功能: 发布和订阅流记录,类似于一个消息队列或企业消息系统 以一种容错的持久方式存储记录流 在流记录生成的时候就处理它们 ...
- 华为oj之等差数列前n项和
题目: 等差数列 热度指数:1010 时间限制:1秒 空间限制:32768K 题目描述 功能: 对于等差数列 2,5,8,11,14- 输入: 正整数N >0 输出: 求等差数列前N项和 返回: ...
- Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装
2019/1/31更新,经过我一段时间的使用 建议大家的jenkins还是不要使用docker方式安装 建议大家的jenkins还是不要使用docker方式安装 建议大家的jenkins还是不要使用d ...
- Config安全控制
1.config server引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <a ...
- angr进阶(4)从任意位置开始
从程序的任意位置开始可以大大的减少测试的时间,使用的方法是控制程序运行到某时刻的寄存器的值来进行的.asisctffinals2015_fake p = angr.Project("fake ...
- sql distinct详解以及优化
一.distinct简介 distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用 它来返回不重复记录的条数,而不是用它来返回不重记录的所有值.其原因是distinct只有用二重循环查询 ...
- Perl IO:IO重定向
文件句柄和文件描述符的关系 文件描述符是操作系统的资源,对于实体文件来说,每打开一次文件,操作系统都会为该进程分配一个文件描述符来关联(指向)这个文件,以后操作文件数据都根据这个文件描述符来操作,而不 ...
- 表达式目录树(Expression)
一:什么是表达式树 Expression我们称为是表达式树,是一种数据结构体,用于存储需要计算,运算的一种结构,这种结构可以只是存储,而不进行运算.通常表达式目录树是配合Lambda一起来使用的,la ...