- 1、本文档共93页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 关系数据库标准语言SQL 3、SQL的功能 数据定义(DDL) 定义数据库的三级模式; 定义、修改、删除基本表(table),定义、删除视图(View),定义、删除索引(Index) 数据操纵(DML) 数据查询:查询、统计、分组、排序等操作 数据更新:对数据的插入、删除、修改操作 数据控制(DCL) 对基本表和视图的授权、完整性规则的描述和事物控制语句等。 4、主要特点: 1]. 语言简洁、易学易用:核心功能只有9个动词,语法简单,接近英语。SQL功能 动词数据定义 CREATE,DROP,ALTER 数据库查询 SELECT数据操纵 INSERT,UPDATE,DELETE数据控制 GRANT,REVOKE 3]. 面向集合的语言:SQL采用集合操作方式,不仅操作对象、查询结果可以是元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。 4]. 以同一种语法结构提供两种使用方式:具有自含式和嵌入式两种形式。 5]. 综合统一:具有查询、操作、定义和控制四种语言一体化的特点。它只向用户提供一种语言,但该语言具有上述多种功能,且每种操作只需一种操作符。 6].支持关系数据库三级模式结构:全体基本表构成了DB的模式,视图和部分基本表构成了外模式,DB的存储文件及其索引构成了内模式。 SQL语言的数据定义功能即指SQL DDL语句。 它包括对数据库用户、基本表、视图、索引等数据库对象的定义和撤销。 介绍:基本表、视图和索引的定义 2. 基本表 (1) 定义基本表的语句格式: CREATE TABLE 表名(列定义,[列级完整性约束]…[﹤表级完整性约束﹥]) 表名:自己定义的标识符 如:user 列定义:列名、列数据类型、长度等。 定义完整性约束:列级约束和表级约束 [CONSTRAINT约束名] 约束定义 练1:建立一个课程基本表,包含课程号、课程名、课程学分三个字段,其中课程号为主码,课程名为候选码,课程学分带有检查约束,只允许取1——6之间的整数。 (2) 修改基本表 ADD方式 使用 ADD方式可以向表中增加列定义和表约束。 语法格式: ALTER TABLE 表名 ADD (列定义|约束条件[{, (列定义|约束条件}]) 例1:在S表中增加一个班号列 ALTER TABLE S ADD(CLASSNO CHAR(6)); MODIFY方式 该方式能对基本表中已有的列定义进行修改, 语法格式: ALTER TABLE 表名 MODIFY (列名 数据类型[NULL|NOT NULL][{, (列名 数据类型[NULL|NOT NULL]}]) 例:把S表中S#列个加宽到10为字符宽度 ALTER TABLE S MODIFY(S# CHAR(10)); DROP方式 该方式能删除基本表中已有的完整性约束定义 或指定的列, 语法格式: ALTER TABLE 表名 DROP CONSTRAINT约束名 |PRMARY KEY|UNIQUE(列名[{,列名}]) 例:删除S表中的主码 删除R表中的籍贯列 ALTER TABLE S ALTER TABLE R DROP PRIMARY KEY DROP 籍贯 3. 视图 (1)定义视图是用一个查询块的查询结果来定义的,语法格式: CREATE VIEW 视图名 [(视图列的列表)] AS 子查询 例4:创建一个有关学生平均成绩的视图resultview (2). 改变视图的名字 RENAME 旧视图名 TO 新视图名 (3). 撤销视图 DROP VIEW 视图名 如:学生平均成绩的视图resultview (4). 使用视图的优点: 1]能够将对数据库的访问限制在一定范围内,有利于数据必威体育官网网址 2]视图机制使不同的用户能以不同的方式看待同一数据,当许多不同种类的用户使用同一个集成数据库时,这种灵活性非常重要 3] 视图对于数据库的重构提供了一定程度的逻辑独立性 4、 索引 (1)建立索引语法格式: CREATE [UNIQUE] INDEX 索引名 ON 表名(列名[次序][,列名[次序]…]) 若指定[UNIQUE]选项,系统将保证基本表中的任意记录在索引列上或组合的索引列上具有唯一
文档评论(0)