SQL Server 的常见约束
1.主键约束------我是最常见的哦(PRIMARY KEY)
- 限制:不能为空,数据唯一,一个表中只有一个
- 方法:
- 建表时直接在列类型后面添加 如:
CREATE TABLE stuDB
(
SID CHAR(12) PRIMARY KEY
) - 建表后通过添加语句添加
添加语句为:
ALTER TABLE <表名>
ADD CONSTRAINT 自定义的约束名 约束类型 具体的约束说明 例:
ALTER TABLE stuDB
ADD CONSTRAINT PK_SID PRIMARY KEY
- 建表时直接在列类型后面添加 如:
2.外键约束------表与表之间的根深蒂固的链接者(FOREIGN KEY)
- 效果:用于两表间建立关系,需要指定引用主表的那列
方法:
1.建表时直接加在类型后面 CREATE TABLE stuDB
(
SID CHAR(12) ,
Sname VARCHAR(12) FOREIGN KEY REFERENCES 从表名(列名)
) 2.建表后在后面添加 添加语句为:
ALTER TABLE 主表名
ADD CONSTRAINT 自定义约束名 FOREIGN KEY(列名)REFERENCES 从表名(列名) 例:
ALTER TABLE stuDB
ADD CONSTRAINT DF_Sname FOREIGN KEY(Sname) REFERENCES sCore(Sname)
3.唯一约束-----这列中只有一个本宝宝(Unique Key)
- 效果:列值唯一,就算为空值,也要任性的唯一
- 方法:
1.建表时直接加在类型后面 CREATE TABLE stuDB
(
SID CHAR(12) ,
Sname VARCHAR(12) ,
StuNO VARCHAR(12) UNIQUE
) 2.建表后在后面添加 添加语句为:
ALTER TABLE 主表名
ADD CONSTRAINT 自定义约束名 UNIQUE(列名) 例:
ALTER TABLE stuDB
ADD CONSTRAINT DF_StuNO UNIQUE(Stu'NO)
4.默认约束------我就默默的帮你选了哦( DEFAULT)
- 效果:只是嘿嘿的帮你选了
- 用法:
1.建表时直接加在类型后面 CREATE TABLE stuDB
(
SID CHAR(12) ,
Sname VARCHAR(12) ,
StuNO VARCHAR(12),
Ssex CHAR(2) DEFAULT '男'
) 2.建表后在后面添加 添加语句为:
ALTER TABLE 主表名
ADD CONSTRAINT 自定义约束名 DEFAULT (默认的东东) FOR 列名 例:
ALTER TABLE stuDB
ADD CONSTRAINT DF_Ssex DEFAULT ('男') FOR Ssex
5.检查约束------你 你 就是你 站住 让我检查通过再走(CHECK)
- 效果: 站住检查,通过后才可录入表中
- 用法:
1.建表时直接加在类型后面 CREATE TABLE stuDB
(
SID CHAR(12) ,
Sname VARCHAR(12) ,
StuNO VARCHAR(12),
Ssex CHAR(2) ,
Sage INT CHECK (Age >= 18 AND Age<=55)
) 2.建表后在后面添加 添加语句为:
ALTER TABLE 主表名
ADD CONSTRAINT 自定义约束名 CHECK(条件) 例:
ALTER TABLE stuDB
ADD CONSTRAINT DF_ Sage CHECK (Age >= 18 AND Age<=55)
6.其他约束
- 自动增长的约束
- 限制:必须在类型是 INT,SMALLINTt等时才可使用
语法:
列名 类型 IDENTITY(开始数字,每次加上的数字) 例如:
stuSeat SMALLINT IDENTITY (1,1)
- 限制:必须在类型是 INT,SMALLINTt等时才可使用
- 限制位数
语法: 列名 NUMERIC(数字位数,小数点位数) 例如: stuID NUMERIC(18,0),
SQL Server 的常见约束的更多相关文章
- SQL Server缺省约束、列约束和表约束
SQL Server缺省约束是SQL Server数据库中的一种约束,下面就为您介绍SQL Server缺省约束.列约束和表约束的定义方法啊,供您参考. SQL Server缺省约束 SQL Serv ...
- SQL Server 2008 常见异常收集(持续更新)
写在前面: 最近,在使用SQL Server 2008时,出现了不少问题.发现,很多问题都是以前碰见过的,并且当时也寻找到了解决方法(绝大部分来源于“百度”与“Google”),只是时间一长,又忘记了 ...
- SQL Server 创建唯一约束sql语句
SQL Server 创建唯一约束sql语句 语句示例: 在创建表是时同时创建, 创建id,name,sex三个字段的唯一索引 create table t1( id int primary ...
- 详解如何定义SQL Server外关键字约束
SQL Server外关键字约束定义了表之间的关系.当一个表中的一个列或多个列的组合和其它表中的主关键字定义相同时,就可以将这些列或列的组合定义为外关键字,并设定它适合哪个表中哪些列相关联.这样,当在 ...
- SQL Server 2005中约束
在SQL Server 2005中有6种约束:主键约束(primary key constraint).惟一性约束(unique constraint).检查约束(check constraint). ...
- Sql Server数据库之约束
一.约束的分类 实体约束:关于行的约束,比如某一行出现的值就不允许别的行出现,如主键 域约束:关于列的约束,对表中所有行的某些列进行约束,如check约束 参照完整性约束:如果某列的值必须与其他列的值 ...
- SQL Server中有关约束(constraint)的一些细节
本文出处:http://www.cnblogs.com/wy123/p/7350265.html (保留出处并非什么原创作品权利,本人拙作还远远达不到,仅仅是为了链接到原文,因为后续对可能存在的一些错 ...
- SQL Server 外键约束的例子
外键约束的测试表与测试数据 -- 创建测试主表. ID 是主键. CREATE TABLE test_main ( id INT, value ), PRIMARY KEY(id) ); -- 创建测 ...
- SQL SERVER 主键约束
主键约束: 遵循关系型模型中的第二范式.唯一的识别一条记录,不能为空. CREATE TABLE Persons ( Id_P int NOT NULL PRIMARY KEY, LastName v ...
随机推荐
- firewalld 操作实践
1.firewalld 从名称上看,模仿的是硬件防火墙的概念,zone. 所有的接口都必须属于某个zone . 在zone内配置规则. 2. 常用的方法是 增加对一个tcp或者udp端口号的允许通过 ...
- Django实现用户密码重置
使用Django内置的认证视图实现简单的通过邮箱重置密码的功能版本:django 1.11 在django.contrib.auth.views中提供了四个类视图用于密码重置 class Passwo ...
- win10 uwp 进度条 Marquez
本文将告诉大家,如何做一个带文字的进度条,这个进度条可以用在游戏,现在我做的挂机游戏就使用了他. 如何做上图的效果,实际需要的是两个控件,一个是显示文字 的 TextBlock 一个是进度条. 那么如 ...
- 【网络爬虫入门05】分布式文件存储数据库MongoDB的基本操作与爬虫应用
[网络爬虫入门05]分布式文件存储数据库MongoDB的基本操作与爬虫应用 广东职业技术学院 欧浩源 1.引言 网络爬虫往往需要将大量的数据存储到数据库中,常用的有MySQL.MongoDB和Red ...
- hibernate利用mysql的自增张id属性实现自增长id和手动赋值id并存
我们知道在mysql中如果设置了表id为自增长属性的话,insert语句中如果对id赋值(值没有被用到过)了,则插入的数据的id会为用户设置的值,并且该表的id的最大值会重新计算,以插入后表的id最大 ...
- struts2使用模型传值
用户bean package userBeans; public class User { private String username; public String getUsername() { ...
- Django项目搭建和配置总结
安装和创建虚拟环境 参考:linux系统下Python虚拟环境的安装和使用 安装Django包 先进入虚拟环境,在联网下执行: pip install django==1.8.7 1.8.7表示dja ...
- 1. Apache ZooKeeper快速课程入门
Tips Tips做一个终身学习的人! 日拱一卒,功不唐捐. 在过去的几十年里,互联网改变了我们生活的方式.Internet上提供的服务通常由复杂的软件系统支持,这些系统跨越了大量的服务器,而且常常位 ...
- Github和Github for windows的使用简介
很多程序员都把自己开发的代码放到Github上,方便自己管理也有利于别人查阅.所以这两天我也捣鼓了一下这个东西,现在把怎么使用Github和Github for windows简单的总结一下. 1.现 ...
- Hat’s Words
Hat’s Words Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...