关系数据库标准查询语言SQL

关系数据库标准查询语言SQL

ID:37726059

大小:388.10 KB

页数:172页

时间:2019-05-29

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

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

1、第三章关系数据库标 准查询语言SQL第三章关系数据库标准语言SQL结构化查询语言SQL(structuredquerylanguage)是一种介于关系代数与关系演算之间的语言,它具有查询,操纵,定义和控制功能,是一种通用的,功能极强的标准的关系数据库语言。3.1SQL概述SQL语言是1974年由Boyce和Chamberlin提出的,1975-1979年在IBM公司的SystemR上实现的。关系数据库标准语言SQL,又称结构化查询语言,简称SQL,包括查询,操纵,控制,定义4个方面。第一个SQL标准为SQL-

2、86。第二个SQL标准为SQL-89。第三个SQL标准为SQL-92。目前,正在推出SQL3。SQL已成为关系数据库领域中的一个主流语言。3.1.1.SQL的特点1综合统一。2高度非过程化。3面向集合的操作方式。4同一种语法结构提供两种使用方式。5语言简洁,易学易用(9个核心动词:CREATE,DROP,ALTER,SELECT,INSERT,UPDATE,DELETE,GRANT,REVOKE)3.1.2SQL语言的基本概念SQL视图1视图2基本表2基本表3基本表4存储文件1存储文件2基本表1外模式模式内模

3、式3.2数据定义关系数据库由外模式,模式和内模式构成。既关系数据库的基本对象是表,视图和索引,因此数据定义功能包括定义表,定义视图和定义索引。3.2.1定义、删除与修改基本表基本格式:CREATETABLE<表名>(<列名><数据类型>[列级完整性约束条件][,<列名><数据类型>[列级完整性约束条件]][,<表级完整性约束条件>]);例1.建立一个学生表Student,它由学号Sno,姓名Name,性别Sex,年龄Age,所在系Sdept五个属性组成:CREATETABLEStudent(SnoCHAR(

4、5)NOTNULLUNIQUE,SnameCHAR(20),SsexCHAR(1),SageINT,SdeptCHAR(15));Student2.修改基本表基本格式:ALTERTABLE〈表名〉[ADD〈新列名〉〈数据类型〉[完整性约束]][DROP〈完整性约束名〉][MODIFY<列名><数据类型>];例2:向student表中加入学时间列,类型为日期型。ALTERTABLEstudentADDScomeDATE。例3:将年龄的数据类型改为半字长整数ALTERTABLEStudentMODIFYSageS

5、MALLNT;例4:删除关于学号必须取唯一值的约束。ALTERTABLEStudentDROPUNIQUE(Sno);3.删除基本表基本格式:DROPTABLE〈表名〉例5.删除student表DROPTABLEStudent;3.2.2.建立与删除索引1.建立索引基本格式:CREATE[UNIQUE][CLUSTER]INDEX<索引名>ON<表名>(<列名>[<次序>[,<列名>[〈次序>]]…..);次序:ASC,DESC例6:为Student,Course,SC3个表建立索引,Student按学号升序

6、,Course按课程号升序,SC按课程号降序和学号升序建立索引。CREATEUNIQUEINDEXStusnoONStudent(Sno);CREATEUNIQUEINDEXCoucnoONCourse(Cno);CREATEUNIQUEINDEXScnoONSC(SnoASC,CnoDESC);2.删除索引基本格式:DROPINDEX<索引名>;例.删除Student表中的Stusname索引.DROPINDEXStusname;3.3.查询SQL提供了SELECT进行查询。基本格式:SELECT[ALL

7、

8、DISTINCT]<目标列表达式>[,<目标列表达式>]FROM〈表名或视图名〉[,〈表名或视图名>][WHERE<条件表达式>][GROUPBY<列名1>[HAVING〈条件表达式〉]][ORDERBY<列名2>[ASC

9、DESC]];学生—课程数据库中的三个表:1.Student表由学号Sno,姓名Sname,性别Ssex,年龄Sage,所在系Sdept组成记为:Student(Sno,Sname,Ssex,Sage,Sdept)其中Sno为主码。2.SCSC(Sno,Cno,Grade)3.Cour

10、seCourse(Cno,Cname,Cpno,Ccredit)3.3.1.单表查询1.选择表中的若干列例1.查寻全体学生的学号与姓名.SELECTSno,SnameFROMStudent;例查询全体学生的姓名,学号,所在系.SELECTSname,Sno,SdeptFROMStudent;2.查询全体SELECT*FROMStudent;3.查询经过计算的值:例4.查询全体学生的姓名及出生年份.S

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

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

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