数据库选修03约束机制幻灯片.pptVIP

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Ch3 约束机制 * 本章内容 1.认识并创建约束 2. 如何增加、删除约束 3. 关系的创建与维护 4. 如何保存数据库 * 1、认识约束 约束 约束是一种定义自动强制数据库完整性的方式。约束定义了关于列中允许值的规则。 例如: 强制定义某成绩列的值只能在0到100之间。 限制某列不能为空。 限制某列值不能相同。 当某一个值出现变化时,其它表的该值也要发生变化。 * 1. 认识约束 * 参照完整性约束: 外键取值参照相应主键 或取空值 1. 认识约束 * 在建立表结构时定义表约束或列约束来实现数据完整性控制 创建表的约束 非空约束(NOT NULL) 主键约束(PRIMARY KEY):有外键引用 惟一性约束(UNIQUE): 检查约束(CHECK):0—100 默认定义(DEFAULT) 外键约束(FOREIGN KEY) 也可以使用CONSTRAINT(约束)关键字创建约束 1. 认识约束 * 1.1 主键约束 主键是表中的一列或一组列,它们的值可以惟一地标识表中的每一行。在创建和修改表时,可以定义主键约束。主键列的值不允许为空。 CREATE TABLE 雇员 ( 雇员编号 int, 姓名 varchar(10), CONSTRAINT PK_雇员 PRIMARY KEY (雇员编号) ) CREATE TABLE 雇员 ( 雇员编号 int PRIMARY KEY, 姓名 varchar(50), ) 或 * 1.2 唯一性约束 惟一性约束可以保证除主键外的其他一个或多个列的数据惟一性,以防止在列中输入重复的值。 CREATE TABLE 雇员 ( 雇员编号 int, 姓名 varchar(10) UNIQUE, CONSTRAINT PK_雇员 PRIMARY KEY (雇员编号), CONSTRAINT IX_雇员UNIQUE (姓名) ) * 1.3 检查约束 检查约束指定表中一列或多列可以接受的数据值或格式。例如,表“学生”中的“入学成绩”列的值应该大于或等于0。 USE 学生管理 ----切换到当前数据库 CREATE TABLE 学生 ( 序号 int IDENTITY(1,1), 学号 char(10) , 姓名 varchar(20) NOT NULL, 性别 bit DEFAULT(0), 出生日期 smalldatetime, 班级 char(8) NOT NULL, 入学成绩 float DEFAULT(0), 所属院系 tinyint NOT NULL CONSTRAINT PK_学生 PRIMARY KEY (学号), CONSTRAINT IX_学生 UNIQUE (姓名), CONSTRAINT CK_学生 CHECK (入学成绩=0) ) USE 学生管理 ---- ----切换到当前数据库 CREATE TABLE 学生 ( 序号 int IDENTITY(1,1), 学号 char(10) CONSTRAINT PK_学生 PRIMARY KEY (学号), 姓名 varchar(50) NOT NULL CONSTRAINT IX_学生 UNIQUE (姓名), 性别 bit DEFAULT(0), 出生日期 smalldatetime, 班级 char(8) NOT NULL, 入学成绩 float DEFAULT(0), CONSTRAINT CK_学生 CHECK (入学成绩=0), 所属院系 tinyint NOT NULL ) 练习 * 使用CREATE TABLE语句创建“客户”表,同时创建检查约束,定义“邮政编码”列的值是由6位数字组成的字符串。 CREATE TABLE 客户 ( 记录编号 int IDENTITY(1,1), 客户单位 varchar(50) NOT NULL, 地址 varchar(100) NOT NULL, 邮政编码 varchar(10) NOT NULL, CONSTRAINT PK_客户 PRIMARY KEY (记录编号), CONSTRAINT

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档