SQL Server 2005系列教学(11) 约束
如何在现有表上增加主键
alter table 表名 add constraint 主键名 primary key(字段)
alter table testkey add constraint pk_id primary key(id)
alter table 表名 drop constraint 主键名
alter table testkey drop constraint pk_id
check 约束: 限定数据必须在指定的范围内,此范围以外不能存放到表中。
通过企业管理器和SQL两种方式来管理
企业管理器:略。。。
SQL 命令:
如何在新建表时创建一个CHECK约束:
create table testkey
(id int not null,
name varchar(10),
sex char(2),
age int
constraint ck_sex check (age>=18 and age<=60)
)
drop table testkey;
alter table 表名 add constraint 约束名 check (约束条件)
alter table testkey add constraint ck_性别 check (sex='男' or sex='女')
如何删除CHECK约束:
alter table testkey drop constraint ck_sex
企业管理器:略
SQL命令:
如何在现有表上创建 UNIQUE 约束
alter table 表名 add constraint 约束名 unique (约束条件)
对yuangong表的姓名作一个UNIQUE 约束
alter table yuangong add constraint uk_name unique (姓名)
alter table 表名 drop constraint 约束名
alter table yuangong drop constraint uk_name
create table 员工表
(
员工编号 int not null identity constraint PK_编号 primary key,
姓名 nvarchar(10) not null,
性别 bit constraint DF_性别 default 1,
年龄 tinyint constraint CK_性别 check(年龄 between 15 and 40),
籍贯 nvarchar(15) constraint CK_籍贯 check(籍贯 in('北京','南京','东京','西京')),
联系电话 varchar(20) constraint CK__联系电话 check(联系电话 like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' or 联系电话 like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9]' or 联系电话 like '0[0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' or 联系电话 like '0[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9]' or 联系电话 like '0[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'),
省份 nvarchar(2),
通讯地址 nvarchar(20),
工作日期 datetime constraint df_工作日期 default getdate()
)
约束必须依赖于表的某一列才能创建.但是规则不用,规则作为一个对象单独存在.但是必须要绑定到列上
才能起作用.而且可以同时绑定到多个表的多个列上.
创建一个规则:
企业管理器:
SQL命令:
创建规则:
create rule 规则名
as
语句
create rule age
as
@age between 18 and 60
sp_bindrule '规则名','表名.列名'
sp_bindrule 'age','yuangong.年龄'
sp_unbindrule '表名.列名'
如:
sp_unbindrule 'yuangong.年龄'
删除规定:
drop rule 规则名
如: drop rule age
创建: create default 默认值名
as
值
as
'技术部'
sp_bindefault '默认值名','表名.列名'
如:
sp_bindefault 'bumen','yuangong.部门'
测试:...
sp_unbindefault '表名.列名'
如:
sp_unbindefault 'yuangong.部门'
drop default 默认值名
如:
drop default bumen
SQL Server 2005系列教学(11) 约束相关推荐
- SQL Server 2005系列教学(11) 约束
约束:此部分内容在此做一简短介绍,详细内容会放入到数据库实践课中介绍 如何在现有表上增加主键 alter table 表名 add constraint 主键名 primary key(字段) alt ...
- SQL Server 2005系列教学(2) SQL 服务及创建数据库
SQL SERVER 2005的服务介绍: 核心服务 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office ...
- SQL Server 2005系列教学(14) 用户管理
用户管理: 哪些用户可以使用: 一种是WINDWOS 一种是SQL SERVER用户 身份验证方式: windows验证: 安全,但不灵活 混合验证(WINDOWS SQL SERV ...
- SQL Server 2005系列教学_用户管理
用户管理: 哪些用户可以使用: 一种是WINDWOS 一种是SQL SERVER用户 身份验证方式: windows验证: 安全,但不灵活 混合验证(WINDOWS SQL SERV ...
- SQL Server 2005系列教学(1) SQL SERVER2005介绍及安装
重点在于SQL Server 2005各个版本的安装及测试! 大纲如下: 信息与数据的区别 信息:是现实世界事物的存在方式或运动状态的反映. 数据:数据是信息的载体和具体表现形式,是信息的表现形式. ...
- SQL Server 2005系列教学(9) SQL 存储过程
声明变量,SQL规定变量在使用之前先声明,以便以后的程序中用到 格式: declare 变量名 变量类型[,变量名 变量类型--] 一次可声明多个变量,它们之间用,分隔.用户变量以一个@开头,全局 ...
- SQL Server 2005系列教学(6) 多表操作及子查询
多表查询:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 人事 ...
- SQL Server 2005系列教学(13) 游标
定义一个标准游标: declare mycursor cursor for select * from yuangong 定义一个只读游标: declare mycursor cursor for ...
- [学习SQL SERVER 2005系列]图解SQL SERVER2005的安装
[学习SQL SERVER 2005系列]图解SQL SERVER2005的安装 前言: [学习SQL SERVER 2005系列]准备把学习2005的一些心得整理出来,和大家分享,共同学习一起提高. ...
最新文章
- C# 运算符的优先级
- Citrix XenDesktop 7.X 视频播放优化
- MySQL事务效率测试
- gj5 自定义序列类
- 【工作感悟】全网最经典26道Spring面试题总结
- Linux初级运维(一)——Linux操作系统及常用命令
- C++实现类似反射模式
- 【IP分析】合并信号concat,拆分总线slice
- Button 自动换行
- 这段iframe代码可以盖住dropdownlist
- 竞拍网站服务器配置,GOM引擎新区竞拍脚本,GOM传奇服务端设置竞拍的方法和教程...
- 埃夫特机器人示教器linux屏幕多少钱,不限 埃夫特机器人电路板维修
- 基本知识 100190
- PHP 依赖注入 容器,PHP 依赖注入容器 Pimple 笔记
- 如何快速批量删除Excel单元格中的“换行符”
- 微信支付商户号的调研
- 劳动保障职业学院计算机专业,北京劳动保障职业学院2020录取分数线(附2017-2020年分数线)...
- 如何在资源社区上传图标素材
- 仙童半导体和“八叛逆”所缔造的硅谷模式
- flume安装以及应用