Oracle 数据库管理与应用:第4章 表的创建与管理.pptVIP

Oracle 数据库管理与应用:第4章 表的创建与管理.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
例4.27 重新创建course的课程表,包括课程号(courseID)、课程名(name)、学分(credit)字段。要求课程号字段定义主键约束,课程名字段定义唯一性约束。 DROP TABLE course; CREATE TABLE course (courseID CHAR(3) PRIMARY KEY, name VARCHAR2(20) UNIQUE, credit NUMBER(3)); 例4.28 在例4.24的xs表的身份证字段上建立唯一性约束。 ALTER TABLE xs ADD CONSTRAINT un_identity UNIQUE(indentity) 4.4.4 定义检查约束 检查(CHECK)约束用来指定某列的可取值的范围,通过限制输入到列中的值来强制域的完整性,即检查输入的每一个数据,只有符合条件的数据才允许输入到表中。CHECK约束的特点: 既可以定义为列级约束,也可以定义为表级约束 可以在一个字段上定义多个CHECK约束 创建检查约束的语法格式如下: [ CONSTRAINT constraint_name ] CHECK (expression) 其中,表达式中可以包含关系运算符、逻辑运算符和IN、LIKE和BETWEEN等特殊运算符,表达式的运算结果是真或假的布尔值。 例4.29 重新创建学生表student,包含学号(studentID)、姓名(name)、性别(sex)、年龄(age)以及所在系(sdept)五个字段,并在年龄字段创建一个CHECK约束,使得年龄的值在18~30岁之间。 DROP TABLE student; CREATE TABLE student (studentID CHAR(6) PRIMARY KEY, name VARCHAR2(8), sex CHAR (2), age number(3) CONSTRAINT ch_age CHECK (age=18 AND age=30), sdept varCHAR2(10)); 例4.30 修改学生表student,在所在系sdept字段创建一个CHECK约束,以限制只能输入有效的系名称。 ALTER TABLE student ADD CONSTRAINT ch_sdept CHECK(sdept IN(软件工程系,计算机应用系,网络工程系)); 4.4.5 定义外键约束 外键(FOREIGN KEY)约束用于与其他表(称为参照表,或父表)中的列(称为参照列)建立连接。 通过将参照表中的主键所在列或具有唯一性约束的列包含在另一个表(称为子表)中,这些列就构成了子表的外键。 子表中的外键字段的取值只能在父表的参照列的值的范围内,或者为空值。 若父表的参照列的某个值被子表的外键引用,那么该值不能被删除也不能被修改。 创建外键约束的语法格式如下: [ CONSTRAINT constraint_name ] [FOREIGN KEY (col_name1[,…n])] REFERENCES table_name(column_name1[,…n]) 其中各参数的意义如下: FOREIGN KEY (col_name1[,…n]):本表中要实现外键约束的列。 table_name:是参照表的表名。 column_name1[,…n]:是参照表中的参照列。 例4.31 在当前方案下,创建雇员表employee和部门表department,其中department表包含部门编号deptID和部门名称deptName,deptID为主键;employee表包含职工编号empID、职工姓名name、年龄age、所在部门depID,其中empID为主键,deptID为外键。 CREATE TABLE department (deptID INT PRIMARY KEY, deptName VARCHAR2(20)); CREATE TABLE employee (empID INT PRIMARY KEY, name VARCHAR2(8) NOT NULL, age NUMBER(3), deptID INT REFERENCES department(deptID)); 注意: 当创建外键约束时,被参照的表必须先创建,而且被参照的列必须是主键或唯一键。 当定义的是列级约束时,通常将外键约束直接定义在该字段的后面,此时必须省略“FOREIGN KEY (col_name1[,…n])”部分,直接写REFERENCES子句,如上例所示。 也可以将上面的外键约束单独定义: CREATE TABLE employee (e

您可能关注的文档

文档评论(0)

学习让人进步 + 关注
实名认证
文档贡献者

活到老,学到老!知识无价!

1亿VIP精品文档

相关文档