第5章节 关系数据库标准语言.ppt

  1. 1、本文档共59页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章节 关系数据库标准语言

数据库系统原理 韶关学院计算机科学与技术系 第5章 关系数据库标准语言—SQL 5.1 SQL概述及特点 5.2 数据定义语句 5.3 数据查询语句 5.4 数据更新语句 5.5 嵌入式SQL 5.6 数据控制机制和语句 5.1 SQL概述及特点 1. SQL的主要功能 (1) 数据定义功能 定义关系数据库的模式、外模式和内模式,以实现对基本表、视图以及索引文件的定义、修改和删除等操作。 (2) 数据操纵功能 包括数据查询和数据更新两种数据操作语句:数据查询指对数据库中的数据查询、统计、分组、排序操作;数据更新指数据的插入、删除、修改等数据维护操作。 (3) 数据控制功能 通过对数据库用户的授权和收权命令来实现有关数据的存取控制,以保证数据库的安全性。 2. SQL的特点 (1) SQL具有自含式和嵌入式两种形式。 (2) SQL具有语言简洁、易学易用的特点。 (3) SQL支持三级模式结构。 ① 全体基本表构成了数据库的模式。 ② 视图和部分基本表构成了数据库的外模式。 ③ 数据库的存储文件和它们的索引文件构成了关系数据库的内模式。 5.2 数据定义语句 5.2.1 基本表的定义和维护 1. 定义基本表 定义基本表语句的一般格式为: CREATE TABLE [〈库名〉]〈表名〉( 〈列名〉〈数据类型〉[〈列级完整性约束条件〉] , 〈列名〉〈数据类型〉[〈列级完整性约束条件〉]] [,…n] [,〈表级完整性约束条件〉] [,…n] ); (1) SQL支持的数据类型 (2) 列级完整性的约束条件 针对属性值设置的限制条件。 1) NOT NULL或NULL约束。NOT NULL约束不允许字段值为空,而NULL约束允许字段值为空。 2) UNIQUE约束。惟一性约束,即不允许列中出现重复的属性值。 3) DEFAULT约束。默认值约束。 DEFAULT〈约束名〉〈默认值〉FOR〈列名〉 4) CHECK约束。检查约束。 CONSTRAINT〈约束名〉CHECK (〈约束条件表达式〉) (3) 表级完整性约束条件 涉及到关系中多个列的限制条件。 1) UNIQUE约束。惟一性约束。 2) PRIMARY KEY约束。定义主码,保证惟一性和非空性。 CONTRAINT〈约束名〉PRIMARY KEY [CLUSTERED] (〈列组〉) 3) FOREIGN KEY约束。用于定义参照完整性。 CONTRAINT〈约束名〉FOREIGN KEY(〈外码〉) REFERENCES〈被参照表名〉(〈与外码对应的主码名〉) 【例5-1】 CREATE TABLE 学生(学号 CHAR(5) NOT NULL UNIQUE, 姓名 CHAR(8) NOT NULL,年龄 SMALLINT, 性别 CHAR(2),所在系 CHAR(20), DEFAULT C1 20 FOR 年龄, CONSTRAINT C2 CHECK(性别 IN (‘男’,‘女’))); CREATE TABLE 课程(课程号 CHAR(5) PRIMARY KEY, 课程名 CHAR(20),先行课 CHAR(5)); CREATE TABLE 选课(学号 CHAR(5),课程号 CHAR(5), 成绩 SMALLINT, CONSTRAINT C3 CHECK(成绩 BETWEEN 0 AND 100), CONSTRAINT C4 PRIMARY KEY(学号,课程号), CONSTRAINT C5 FOREIGN KEY(学号) REFERENCES 学生(学号), CONSTRAINT C6 FOREIGN KEY(课程号) REFERENCES 课程(课程号)); 2. 修改基本表和删除基本表 ALTER TABLE〈表名〉 [ADD(〈新列名〉〈数据类型〉[完整性约束] [,…n])] [DROP〈完整性约束名〉] [MODIFY(〈列名〉〈数据类型〉[,…n])]; (1) 使用ADD子句增加新列 【例5-2】向课程表中增加“学时”字段。 ALTER TABLE 课程 ADD 学时 SMALLINT; (2) 使用MODIFY子句修改列的原定义 (3) 使用DROP子句删除指定的完整性约束条件 【例5-3】删除学生表中对年龄的默认值的定

文档评论(0)

ctuorn0371 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档