- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章__结构化查询语言SQL
第3章 结构化查询语言SQL 通过对本章的学习,读者需要掌握以下内容: (1)了解SQL的基本定义和特点,定义视图的优点。 (2)熟悉集函数的用法,数据定义、数据查询、数据操作语言的定义。 (3)理解ANY、ALL谓词的含义,GRANT语句、REVOKE语句的基本用法。 (4)掌握SELECT语句、UPDATE语句、INSERT语句、CREATE语句的各种用法。 第3章 结构化查询语言SQL 3.1 SQL概述 3.2 数据定义功能 3.3 数据操纵功能 3.4 视图 3.5 数据控制 3.1 SQL概述 SQL语言具有下列特点: (1)类似于自然语言,简单易学。 (2)一种非过程语言。 (3)一种面向集合的语言。 (4)既可独立使用,又可嵌入到宿主语言中使用。 (5)具有查询、删除、定义和控制的一体化功能。 SQL语言支持关系数据库三级模式结构,其中外模式对应于视图和部分基本表,模式对应于基本表,内模式对应于存储文件。 SQL语言包含以下4个部分: (1)数据定义语言DDL(Data Definition Language)。 CREATE、ALTER、DROP。 (2)数据查询语言DQL(Data Query Language)。 SELECT。 (3)数据操纵语言DML(Data Manipulation Language)。 INSERT、UPDATE、DELETE。 (4)数据控制语言DCL(Data Control Language)。 GRANT、REVOKE。 3.2 数据定义功能 SQL的数据定义功能是指定义数据库的结构,包括定义基本表、定义视图和定义索引3个部分,如表3-1所示。 3.2.1 定义、删除与修改基本表 1. 定义基本表 建立数据库的第一步就是定义表。定义基本表的命令为CREATE TABLE,格式如下: CREATE TABLE 表名(列名1数据类型[列级完整性约束条件] [,列名2数据类型[列级完整性约束条件]……] [,表级完整性约束条件]); 其中表名是所要定义的基本表的名字,它可以由一个或多个属性(列)组成。 列级完整性约束条件有NULL(空)、UNIQUE(取值惟一),如NOT NULL UNIQUE表示取值惟一,不能取空值。表级完整性约束条件有PRIMARY KEY(定义主码)、FOREIGN KEY…REFERENCES …(定义外码)。 【例3-1】建立一个学生表Student,它由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成,其中学号不能为空,值是惟一的,姓名的取值也惟一。 CREATE TABLE Student(Sno CHAR(3) NOT NULL UNIQUE, Sname CHAR(10) UNIQUE, Ssex CHAR(2), Sage INT, Sdept CHAR(4)); 2. 修改基本表 修改基本表的命令为ALTER TABLE,格式如下: ALTER TABLE 表名[ADD新列名数据类型[完整性约束]] [DROP完整性约束] [MODIFY]列名数据类型]; 其中表名是要修改的基本表,ADD子句用于增加新的属性和新的完整性约束条件,DROP子句用于删除指定的完整性约束条件,MODIFY子句用于修改原有的列定义,包括修改列名和数据类型。 【例3-4】向供应商表S增加Zip(邮政编码)列。 ALTER TABLE S ADD Zip CHAR(6); 【例3-5】将Status字段的数据类型改为整型。 ALTER TABLE S MODIFY Status INT; 3. 删除基本表 当某个基本表不再使用时,可用DROP TABLE命令进行删除。基本表一旦删除,表中的数据和在表上建立的索引将自动删除。 格式如下: DROP TABLE 表名; 3.2.2 建立与删除索引 1. 建立索引 建立索引使用CREATE INDEX命令,格式如下: CREATE [UNIQUE][CLUSTER] INDEX索引名 ON 表名(列名1[次序][,列名2[次序]]……); 2. 删除索引 索引一经建立,就由系统使用和维护它,不需要用户干预。删除索引使用DROP INDEX命令,格式如下: DROP INDEX 索引名; 删除索引时,系统会同时从数据字典中删去有关该索引的描述。 3.3
文档评论(0)