- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
sql数据完整性
数据完整性
一:数据完整性:
在SQL Server 2005中,根据数据完整措施所作用的数据库对象和范围不同,可以将数据完整性分为以下几种:
1、实体完整性(主键、唯一性约束)
2、参照完整性(外键约束)
3、域完整性(check、默认值约束)
4、用户定义的完整性
二:数据库规则:
规则也是一种数据库对象,规格可以绑定到表的一列或多列上,也可以绑定到用户定义的数据类型上。它的作用与check的部分功能相同,为insert和update限制输入数据。
规则的操作:
use jxau1201;
go
--1.创建规则
create rule deptid_rule as @deptid like [1-9][0-9];
create table t_dept(
deptid int primary key,
deptname varchar(30) not null,
deptloc varchar(120)
);
insert into t_dept values(01,软件,昌北);
insert into t_dept values(02,计算机,昌北);
--2.绑定规则
sp_bindrule deptid_rule,t_dept.deptid;
insert into t_dept values(03,外语,东湖);
insert into t_dept values(10,农林,昌北);
--3.解除绑定
sp_unbindrule t_dept.deptid;
insert into t_dept values(03,外语,东湖);
--4.删除规则
drop rule deptid_rule;三:主键(PRIMARY KEY)约束:
主键约束使用数据表中的一列数据或者多列数据来唯一的标识一行数据。也就是说,在数据表中不能存在主键相同的两行数据,而且主键约束下的列不能为空(NULL),在创建表时,最好每个数据表都拥有自己唯一的主键,主键也可以由几个列组合成。每个表只能有一个主键。
注:不能定义TEXT或IMAGE数据类型的字段列为主键。
SSMS创建主键
在创建表结构的时候,选定列名或列名组合(shift键),在所选列上右击弹出相应菜单,如右图所示。
单击有钥匙图标的菜单项。
创建成功后该列名前出现一个小钥匙形状的图标如右图所示
Sql语句创建主键
创建列级约束:
use jxau1201;
go
create table t_class(
classid char(8) primary key,
classname varchar(30) not null,
classaddr varchar(120),
deptid int not null
);创建表级约束,多个字段组合成为主键:
drop table t_class;
create table t_class(
classid char(8),
classname varchar(30) not null,
classaddr varchar(120),
deptid int not null,
constraint pk_classid primary key(classid,classname)
);修改主键约束:
注:要更改主键约束,必须先删除原来的主键约束,再添加新的主键约束
--查看表主键信息
sp_pkeys t_class
--删除主键
alter table t_class drop constraint pk_classid
--增加主键
alter table t_class add constraint pk_classid primary key(classid,classname)四:外键(FOREIGN KEY)约束:
外键约束定义了表之间的关系,主要用来维护两个表之间的一致性。出于某种关联的需要,当一个表需要引用另一个表的主键作为自己的一个字段时,我们称这个引用来的字段为外键。
这样,当主键更新或删除时,其它所有表中与这个主键关联的外键也将被相应的更新或删除。当向外键所在的表插入或更新数据(外键字段)时,如果与外键表相关联的主键表的主键中无与插入或更新的外键有相同的值时,系统会报错并拒绝插入或更新数据。
注:不能定义TEXT或IMAGE数据类型的字段列为外键。
SSMS设置外键
在创建表结构的时候,选定列名,在所选列上右击弹出相应菜单,如右图所示。
点击“表和列规范”。修改外键关联内容
Sql语句创建外键
创建列级约束:
use jxau1201;
go
drop table t_class;
drop table t_dept;
create table t_dept(
d
您可能关注的文档
- ResettingcomputeraccountsinWindows.doc
- rdMeeting–allpr.doc
- ResponseofPeppertoFertilizationwith.doc
- responsibility-accounting.doc
- ResurgentJapaneseMilitarism(people).doc
- REUSEALVGRIDDISPLAYLVC超详细讲解.doc
- ReviewingAccountingInformationSPD.doc
- reviewofSignalsandsystems.doc
- ReviewofUnitWouldyoumindturningdownthemusic说课稿.doc
- revisedfrontoperation.doc
文档评论(0)