关系数据库标准语言

关系数据库标准语言

ID:27445657

大小:589.51 KB

页数:136页

时间:2018-11-30

关系数据库标准语言_第1页
关系数据库标准语言_第2页
关系数据库标准语言_第3页
关系数据库标准语言_第4页
关系数据库标准语言_第5页
资源描述:

《关系数据库标准语言》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第三章关系数据库标准语言SQL本章主要教学内容:数据定义、查询、数据更新视图数据控制嵌入式SQL3.1SQL概述3.1.1SQL的特点SQL是一个介于关系代数与关系演算之间的结构化查询语言,其功能不只是查询。SQL是一个通用的、功能极强的关系数据库查询语言。1.一体化特点;2.高度非过程化;3.面向集合的操作方式;4.对待不同的工作方式采用统一的语法结构;5.语言简洁,易学易用;6.视图数据结构3.1.2SQL语言的基本概念SQL语言支持关系数据库三级模式结构——视图、基本表和存储文件。SQL视图1视图2基本表1基本表2基本表3基本表4存储文件1存储文件2外模式模式内模式利用S

2、QL进行数据库操作可分三个阶段进行:定义数据库结构,定义关系模式;向已定义的数据库中添加、删除和修改数据;对已存在数据库进行各种查询与统计。3.2数据定义注:视图是基于基本表的虚表,索引是依附于基本表的,因此SQL通常不提供修改视图定义和修改索引的操作。3.2.1定义、删除与修改基本表一、定义基本表学号Sno姓名Sname性别Ssex年龄Sage所在系Sdept95001李勇男20CS95002刘晨女19IS95003王敏女18MA95004张立男19ISStudent命令格式:CREATETABLE<表名>(<列名><数据类型>[<列级完整性约束条件>][,<列名><数据类型>[<列

3、级完整性约束条件>]]…[,<表级完整性约束条件>])<表名>:所要定义的基本表的名字说明:<列名>:组成该表的各个属性(列)<列级完整性约束条件>:涉及相应属性列的完整性约束条件<表级完整性约束条件>:涉及一个或多个属性列的完整性约束条件例1建立一个“学生”表Student,它由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成。其中学号不能为空,值是唯一的,并且姓名取值也唯一。CREATETABLEStudent(SnoCHAR(5)NOTNULLUNIQUE,SnameCHAR(20)UNIQUE,SsexCHAR(1),SageINT,Sdep

4、tCHAR(15))常用完整性约束:唯一性约束:UNIQUE非空值约束:NOTNULL参照完整性约束主码约束:PRIMARYKEYSC学号课程号成绩SnoCnoGrade9500119295001285950013889500229095002380例2建立一个“学生选课”表SC,它由学号Sno、课程号Cno,修课成绩Grade组成。CREATETABLESC(SnoCHAR(5),CnoCHAR(3),Gradeint)二、修改扩充基本表ALTERTABLE<表名>[ADD<新列名><数据类型>[完整性约束]][DROP<完整性约束名>][MODIFY<列名><数据类型>];说明:<

5、表名>:要修改的基本表ADD子句:增加新列和新的完整性约束条件DROP子句:删除指定的完整性约束条件MODIFY子句:用于修改列名和数据类型命令格式:例4将年龄的数据类型改为半字长整数。ALTERTABLEStudentMODIFYSageSMALLINT注:修改原有的列定义有可能会破坏已有数据。例5删除学生姓名必须取唯一值的约束。ALTERTABLEStudentDROPUNIQUE(Sname)例3向Student表增加“入学时间”列,其数据类型为日期型。ALTERTABLEStudentADDScomeDATE注:不论基本表中原来是否已有数据,新增加的列一律为空。三、删除基本表D

6、ROPTABLE<表名>命令格式:说明:删除基本表及其数据,释放相应的存储空间,同时系统也自动删除在此表上建立的各种索引,也删除了在该表上授予的操作权限。表上的视图往往仍然保留,但无法引用。例7删除Student表DROPTABLE Student3.2.2建立与删除索引建立索引是加快查询速度的有效手段建立索引DBA或表的属主(即建立表的人)根据需要建立有些DBMS自动建立以下列上的索引PRIMARYKEYUNIQUE维护索引(DBMS自动完成)使用索引DBMS自动选择是否使用索引以及使用哪些索引一、建立索引命令格式:CREATE[UNIQUE][CLUSTER]INDEX<索引名>O

7、N<表名>(<列名>[<次序>][,<列名>[<次序>]]…);说明:用<表名>指定要建索引的基本表名字索引可以建立在该表的一列或多列上,各列名之间用逗号分隔用<次序>指定索引值的排列次序,升序:ASC,降序:DESC。缺省值:ASCUNIQUE表明此索引的每一个索引值只对应唯一的数据记录CLUSTER表示要建立的索引是聚簇索引所谓聚簇索引是指索引项的顺序与表中记录的物理顺序一致的索引组织。例8为学生-课程数据库中的Student,Course

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。