SQL Server——规则是什么?规则和约束有什么不同?
目录
规则是什么?
如何创建一个规则?
如何删除规则?
如何创建约束?
规则和约束有什么不同?
规则是什么?
是单独的SQL Server对象,可以关联到一个或几个表中的一列或几列。它可以使用多种方式来完成对数据值的检验,可以使用函数返回验证信息,也可以使用关键字BETWEEN、LIKE和IN完成对输入数据的检查
通俗来说就是:对一个表的某一列创建一个规则,当用户插入数据时,能插入什么样的数据,不能插入什么样的数据,起到一个限制的作用
如何创建一个规则?
语法:
CREATE RULE rule_name
AS
codition_expression
需求:现有一个score表,限制用户输入分数的值,只能在0-100之间
id | cid | score |
1 | 1 | 66 |
2 | 1 | 99 |
3 | 2 | 77 |
第一步,创建规则
--创建规则sc
--设置成绩得取值范围在0和100之间
create rule sc
as
@value between 0 and 100
第二步,绑定规则到具体的列
--绑定规则到score表的score列
sp_bindrule sc,'score.score'
当我对score表的score列进行数据插入时,系统就会自动报错
如何删除规则?
注:如果要删除 某一个规则的话,必须先对这个规则进行“解除绑定”操作,然后再删除规则
解除规则绑定
语法:
--解除规则绑定
sp_unbindrule[@obkectname=]<object_name>
[,[@futureonly=]<futureonlu_flag>
需求:删除score规则
--解除规则绑定
sp_unbindrule 'score.score'--删除规则
drop rule score
可能有些小伙伴就会问了,CHECK约束也是对表中的某一列起限制作用,那有一个不就行了,为什么还要有两个呢?他们有什么区别?我们先动手试试吧~~
如何创建约束?
实例:使用约束的方法对score列指定范围,限制输入
--创建check约束
--指定字段score输入的分数在0和100之间
create table score_info
(
id int not null,
cid int not null,
score int CHECK( score between 0 and 100)
);
现在对score表score字段进行数据插入操作,这是系统就会自动报错
相关用户也可以点击:SQL的五大约束_吃豆子的恐龙的博客-CSDN博客
规则和约束有什么不同?
- 规则是单独存储在该数据库中的,约束是和表联系在一起的
- 当表删除时,约束也就被删除了,规则并不会
- 一个字段可以有多个约束,但只能有一个规则
SQL Server——规则是什么?规则和约束有什么不同?相关推荐
- 修改sql服务器排序规则,SQL SERVER数据库服务器排序规则修改
SQL Server服务器修改排序规则的方法 操作及验证步骤: 1 登录数据库后,查看当前安装数据库默认排序规则的两种方式 方式一.使用SQL Server 2014 Management Studi ...
- SQL Server中唯一索引和唯一约束之间的区别
This article gives you an overview of Unique Constraints in SQL and also the Unique SQL Server index ...
- SQL Server 添加与删除主键约束
PRIMARY KEY 约束唯一标识数据库表中的每条记录.主键必须包含唯一的值.主键列不能包含 NULL 值.每个表都应该有一个主键,并且每个表只能有一个主键.主键约束操作包含了添加约束和删除约束,修 ...
- SQL Server 问题之 排序规则(collation)冲突
一.写在前面 最近公司进行开发环境升级,数据库也准备了一个新的服务器,一切准备好后开始数据迁移,采取的方式为对现有Database(现有服务器Windows Server 2003 + SQL Ser ...
- 【2017-03-09】SQL Server 数据库基础、四种约束
一.数据库和内存的区别 数据库: 一些存储在硬盘上的数据文件 内存: 计算机临时存储的一些数据 二.常用数据库 .Net - SQL Server PHP - MySql Java - Oreacl ...
- SQL Server 安装:功能规则报错KB2919355s
下载地址
- sql server修改数据库排序规则
ALTER DATABASE db COLLATE Chinese_PRC_CS_AS
- SQL Server修改表结构,添加约束
文章目录 修改表结构 1.修改字段数据类型 2.添加字段 3.删除字段 4.修改字段特征(约束) 1>添加标识列约束(IDENTITY) 2>添加主键约束(PRIMARY KEY) 3&g ...
- Sql Server排序规则的简介、选择、应用
用SQL语句查询当前数据库的默认排序规则 use db_name exec sp_helpsort go --以下转自:http://hi.baidu.com/jztchina/blog/item ...
- SQL之COLLATE 子句 排序规则
COLLATE 是一个子句,可应用于数据库定义或列定义以定义排序规则,或应用于字符串表达式以应用排序规则转换. 语法 COLLATE { <collation_name> | databa ...
最新文章
- 自行编译Vim for Windows,加入Python支持!
- Leaflet中原生方式实现测量面积
- Unity TA总监王靖:Unity如何实现美术画质升级?
- 邮件协议POP3/IMAP/SMTP服务的区别
- vector向量容器元素排序与查找
- SEAYAR - 思雅,快乐生活
- 获取指定USB设备的VID PID和SerialNumber
- 2022 年前面试总结与感悟分享
- 代码审计--17--修复方案汇总(上)
- 【Rust日报】2022-07-20 极简主义 Poem 指南
- 大数据分析 | 用 Python 做文本词频分析
- 开发者实践:为了“网课”不痛苦,在校生做出了自己在线教育系统
- Scientific Linux 6(x86_64) 之旅
- 上传文件500 -内部服务器错误,怎样上传文件
- Ubuntu16.04 安装ROS Kinetic 究级详细教程
- c语言坐标海伦公式,C语言:用海伦公式求三角形面积 , C语言编程问题,利用海伦公式求三角形面积...
- 小学老师工资多少一个月_小学老师一个月多少工资呢?揭开真实收入,难怪很多人都去当老师...
- fio工具测试硬盘性能
- 国标暖通图集大全 电子版
- 友盟+2019 UBDC大数据峰会:数据云智能 灯塔照通途
热门文章
- recreate()、finish()与onBackPressed()
- Android时使用jain-sip问题记录
- D3选择v4(一、selection)中文
- 谷歌添加扩展程序没有反应
- 2080Ti与3080Ti单机多卡安装与并行训练
- 企业微信运营实操指南
- arch linuxu安装 java,Arch Linux 安装博通 BCM4360 驱动(Arch Linux, Ubuntu, Debian, Fedora…)
- 基于JavaWeb的药品进销存管理系统(JSP)
- 讯飞输入法PC版测评:拼音输入糟糕,语音输入强悍
- Glide加载图片尺寸不对的问题