第3章 关系数据库的标准语言―

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第3章关系数据库的标准语言——SQL第3章关系数据库的标准语言—SQL要编写通用的计算机程序,我们可能使用BASIC、C、PASCAL、FORTRAN等程序设计语言等,这些语言已经成为了国际标准。操作关系数据库也有一种国际标准语言,就是SQL。使用SQL语言可以进行数据定义、数据查询、数据操纵和数据控制。目前,几乎所有的关系数据库系统都支持SQL语言。本章主要介绍SQL语言的四部分功能,即数据定义、数据查询、数据操纵和数据控制。第3章关系数据库的标准语言——SQL第3章的章节安排3.1SQL的用途3.2SQL的数据定义功能3.3SQL的数据查询功能3.4SQL的数据操纵功能3.5SQL的数据控件功能3.6视图第3章关系数据库的标准语言——SQL3.1SQL的用途关系数据库系统除了提供自己特有的数据操作语言之外,还要支持SQL语言。关系数据库管理系统A关系数据库管理系统B专用语言ASQL语言专用语言B第3章关系数据库的标准语言——SQL3.1SQL的用途(续)SQL语言有两种使用方法,一种是用户联机使用的交互方式,另一种是作为子语言嵌入到其他高级程序语言中的嵌入方式。数据库关系数据库系统信息系统(数据库应用系统)嵌入式的SQL语句SQL命令(语句)第3章关系数据库的标准语言——SQL3.2SQL的数据定义功能SQL的数据定义功能是指定义数据库的结构,包括定义、修改和删除基本表。数据定义功能的SQL语句操作对象操作方式创建删除修改表CREATETABLEDROPTABLEALTERTABLE视图CREATEVIEWDROPVIEW索引CREATEINDEXDROPINDEX第3章关系数据库的标准语言——SQL3.2.1定义、修改与删除基本表1.定义基本表CREATETABLE<表名>(<列名><数据类型>[列级完整性约束条件][,<列名><数据类型>[列级完整性约束条件]…][,<表级完整性约束条件>];例如:CREATETABLE图书(图书编号CHAR(6)NOTNULLUNIQUE,书名CHAR(40)NOTNULL,作者CHAR(12),库存量CHAR(6),定价DECIMAL(6,2));第3章关系数据库的标准语言——SQL3.2.1定义、修改与删除基本表(续)2.修改基本表ALTERTABLE<表名>[ADD<新列名><数据类型>[完整性约束条件][DROP<完整性约束名>][MODIFY<列名><数据类型>];例如:ALTERTABLE图书ADD出版社CHAR(40);ALTERTABLE图书DROPUNIQUE(图书编号);ALTERTABLE图书MODIFY作者CHAR(20);3.删除基本表DROPTABLE<表名>;第3章关系数据库的标准语言——SQL3.2.2建立和删除索引1.建立索引CREATE[UNIQUE][CLUSTER]INDEX<索引名>ON<表名>(<列名>[<次序>][,<列名>[<次序>]]…);例如:CREATEUNQUEINDEX书号ON图书(图书编号);CREATEINDEX库存量ON图书(库存量DESC);第3章关系数据库的标准语言——SQL3.2.2建立和删除索引(续)2.删除索引DROPINDEX<索引名>;例如:DROPINDEX库存量;第3章关系数据库的标准语言——SQL3.3SQL的数据查询功能3.1.1简单查询3.1.2联接查询3.1.3嵌套查询3.1.4集合查询3.1.5SELECT语句的格式第3章关系数据库的标准语言——SQL3.3.1简单查询简单查询是指只涉及一个表的数据查询。例3-7:SELECT客户编号,客户名FROM客户;例3-8:SELECT*FROM订购;第3章关系数据库的标准语言——SQL3.3.1简单查询(续1)例3-9:SELECT图书编号,书名,作者,库存量,定价FROM图书WHERE出版社="人民文学出版社"ORDERBY定价DESC;例3-10:SELECT图书编号,书名,作者,库存量FROM图书WHERE书名LIKE"%数据库%";第3章关系数据库的标准语言——SQL3.3.1简单查询(续2)例3-11:SELECT客户编号,客户名,所在城市,联系电话FROM客户WHERE所在城市="北京"OR所在城市="上海";例3-14:SELECT"最高价图书:",MAX(定价),"最低价图书:",MIN(定价),"平均价格:",AVG(定价)FROM图书WHERE出版社="高等教育出版社";第3章关系数据库的标准语言——SQL3.3.2联接查询联接查询是指涉及两个表以上的查询。例3-16:SELECT图书编号,书名,库存量,订货数量,订货日期FROM图书,订购WHERE图书.图书编号=订购.图书编号AND图书.图书编号=AB-001;例3-18:SELECT客户编号,客户名,所在城市,联系电话,订购数量FROM客户,图书,订购WHERE客户.客户编号=订购.客户编号AND图书.图书编号=订购.图书编号AND书名="关系数据库系统概论";第3章关系数据库的标准语言——SQL3.3.3嵌套查询嵌套查询是指在SELECT-FROM-WHERE查询块内部再嵌入另一个查询块,嵌入的查询块被称为子查询。例3-19:SELECT客户名,联系电话FROM客户WHERE所在城市IN(SELECT所在城市FROM客户WHERE客户名="王强");第3章关系数据库的标准语言——SQL3.3.4集合查询例3-22:SELECT*FROM客户WHERE所在省份="黑龙江"UNIONSELECT*FROM客户WHERE所在城市="牡丹江";第3章关系数据库的标准语言——SQL3.3.5SELECT语句的格式SELECT[ALL∣DISTINCT]目标列表达式[,目标列表达式…]FROM表名或视图名,[,表名或视图名…][WHERE条件表达式][GROUPBY分组属性名[组选择条件表达式]][ORDERBY排序属性[升(降)序]];第3章关系数据库的标准语言——SQL3.4SQL的数据操纵功能3.1.1插入数据3.1.2修改数据3.1.3删除数据第3章关系数据库的标准语言——SQL3.4.1插入数据(INSERT)格式:INSERTINTO<表名>[(<列名1>,<列名2>,…)]VALUES(<常量1>,<常量2>,…];例如:INSERTINTO图书(图书编号,书名,作者,定价)VALUES(”DB-303”,”数据库技术”,”李一”,18.6);第3章关系数据库的标准语言——SQL3.4.2修改数据(UPDATE)格式:UPDATE<表名>SET<列名1>=<表达式1>[,<列名2>=<表达式2>…][WHERE<条件>];例如:UPDATE图书SET图书编号="WY-303"WHERE图书编号="WH-303";第3章关系数据库的标准语言——SQL3.4.3删除数据(DELETE)格式:DELETEFROM<表名>[WHERE<条件>];例如:DELETEFROM图书WHERE图书编号="AB-201";第3章关系数据库的标准语言——SQL3.5SQL的数据控制功能3.1.1授予权限3.1.2收回权限第3章关系数据库的标准语言——SQL3.5.1授予权限(GRANT)格式:GRANT<权限>[,<权限>,…][ON<对象类型><对象名>]TO<用户>[,<用户>,…][WITHGRANTOPTION];例如:GRANTSELECTONTABLE客户TOUSER1;第3章关系数据库的标准语言——SQL3.5.2收回权限(REVOKE)格式:REVOKE<权限>[,<权限>,…][ON<对象类型><对象名>]FROM<用户>[,<用户>,…];例如:REVOKEUPDATEONTABLE客户FROMUSER1,USER2;第3章关系数据库的标准语言——SQL3.6视图3.6.1视图的作用3.6.2定义、删除视图第3章关系数据库的标准语言——SQL3.6.1视图的作用•限制某些用户的查询范围,保护基本表中希望保密的数据。•简化查询语句。•使用户能够以多种角度看待同一数据。第3章关系数据库的标准语言——SQL3.6.2定义、删除视图1.定义视图格式:CREATEVIEW<视图名>[(<列名>[,<列名>…)]AS<子查询>[WITHCHECKOPTION];例如:CREATEVIEW铁道_图书ASSELECT图书编号,书名,作者,库存量,定价FROM图书WHERE出版社=“铁道出版社”;2.删除视图DROPVIEW<视图名>;

1 / 27
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功