SQL数据库原理及其应用ppt课件-(8)

上传人:王者****22 文档编号:360056428 上传时间:2023-09-09 格式:PPT 页数:107 大小:997.50KB
返回 下载 相关 举报
SQL数据库原理及其应用ppt课件-(8)_第1页
第1页 / 共107页
SQL数据库原理及其应用ppt课件-(8)_第2页
第2页 / 共107页
SQL数据库原理及其应用ppt课件-(8)_第3页
第3页 / 共107页
SQL数据库原理及其应用ppt课件-(8)_第4页
第4页 / 共107页
SQL数据库原理及其应用ppt课件-(8)_第5页
第5页 / 共107页
点击查看更多>>
资源描述

《SQL数据库原理及其应用ppt课件-(8)》由会员分享,可在线阅读,更多相关《SQL数据库原理及其应用ppt课件-(8)(107页珍藏版)》请在金锄头文库上搜索。

1、第 1 章 关系数据库标准语言SQL 关系数据库标准语言SQL1.1 SQL 概述1.2 SQL的数据定义1.3 SQL的数据查询1.4 SQL的数据更新1.5 SQL的视图1.6 SQL的数据控制1.7 嵌入式SQL1.1 SQL 概述 1.1.1 SQL的发展 1.1.2 SQL的特点1.1.3 基本概念 1.1.1 SQL的发展 SQL:StructuredQueryLanguageBoyce和Chamberlin于1974年提出年提出SQL语言语言;19751979,IBM研制关系数据库SystemR1986年10月成为美国国家标准;1987年成为国际标准;1998:SQL-89;19

2、92年:SQL-92;1999年:SQL-99,亦称SQL3;SQL-2003;据报道,2007年又发布了新标准,并有中国代表参加,提出的有些建议被采纳;1.1.2 SQL的特点1.综合统一2.高度非过程化 3.面向集合的操作方式4.一种语法,两种使用方式6.支持三级模式结构5.语言简捷,易学易用SQL特点1:综合统一 SQL语言将数据定义语言DDL、数据操纵语言DML、数据控制语言DCL的功能集于一体,语言风格统一,可以独立完成数据库生命周期中的全部活动。SQL特点2:高度非过程化 用SQL语言进行数据操作时,只要提出“做什么做什么”,而无需指明“怎么做”。而存取路径的选择以及SQL语句的操

3、作过程由系统自动完成,大大减轻了用户负担,提高了数据独立性。SQL特点3:面向集合的操作方式SQL语言操作的对象和操作的结果都用集合,也就是关系来表示。SQL特点4:一种语法,两种使用方式 SQL语言既是自含式语言终端键盘上直接键入SQL命令对数据库进行操作;又是嵌入式语言SQL语句能够 嵌 入 到 高 级 语 言,如 C,C+,PowerBuilder,Visual Basic,Delphi,ASP等编写的程序中使用,且语法结构基本上一致。SQL特点5:语言简洁,易学易用 完成核心功能只用9个动词,SQL语言接近英语句子。SQL 功能动 词数据查询SELECT数据定义CREATE,DROP,

4、ALTER数据操纵INSERT,UPDATE,DELETE数据控制GRANT,REVOKESQL特点6:支持三级模式结构SQL命令视图1视图2基本表1基本表2基本表3基本表4存储文件1存储文件2外模式模 式内模式1.1.3 基本概念1.基本表。基本表也称关系,是数据库中独立存在的表,包括属性、属性名、表结构和元组等概念。元组属性值SnoSnameSsexSageSdeptS01S02S03S04S05S06王建平刘华范林军李伟黄河长江男女女男男男211918191820自动化自动化计算机数学数学数学表结构基本表CREATE TABLE 命令创建。属性名1.1.3 基本概念2.视图。视图由一个或

5、几个基本表(视图)导出的表,它由CREATE VIEW命令创建。视图中只存放视图的定义及其关联的基本表名等信息而不存放任何具体数据,视图又称虚拟表。在查询视图时与查询基本表完全相同,且用户可以在视图上再定义视图。3.存储文件。存储文件也称数据库文件,它由若干个基本表组成。存储文件的物理结构对用户是透明的。数据库Student_09Mis对应的存储文件为:Student_09Mis_Data.MDF马上介绍。1.2 SQL的数据定义 下面在介绍SQL命令和格式时,以SQL Server 2008使用的为准,并略去了一些语法细节。操作对象操 作 方 式创 建删 除修 改表CREATE TABLED

6、ROP TABLEALTER TABLE视图CREATE VIEWDROP VIEW索引CREAT INDEXDROP INDEX1.2.1 数据库的建立与删除1.用企业管理器创建数据库Student_09Mis;2.在WindowsXP下查看对应的两个存储文件:Student_09Mis_Data.MDF Student_09Mis_Log.LDF3.下面试图把表1-2,1-4,1-5放到数据里面去 数据定义,即定义基本表结构。1.2.1 数据库的建立与删除SnoSnameSsexSageSdeptS01S02S03S04S05S06王建平刘华范林军李伟黄河长江男女女男男男211918191

7、820自动化自动化计算机数学数学数学表1-2:Students1.2.1 数据库的建立与删除 表1-4 Couses(左)与表1-4 Reports(右)的结构及其数据CnoCnamePre_CnoCreditsC01C02C03C04C05C06C07英语数据结构数据库DB_设计C+网络原理操作系统C05C02C03C07C054223333SnoCnoGradeS01S01S02S02S02S03S03S04C01C03C01C02C03C01C02C0392849094827290751.定义基本表 说说明明:方括为可选项,是所要定义的基本表的名字。其它内容的含义通过例子解释,同学们可以

8、看SQL Server开发指南等书籍或直接查看其帮助程序。命令格式为:命令格式为:CREATE TABLE(列级完整性约束条件,列级完整性约束条件,表级完整性约束条件);1.定义基本表定义基本表的命令如下(打开查询分析器):CREATE TABLEStudents(Sno CHAR(5)PRIMARYKEY,SnameCHAR(20)NOTNULL,SsexCHAR(2),SageINT,SdeptCHAR(15)类似地,可定义Courses表。1.定义基本表下面介绍Reports表的定义:CREATETABLEReports(SnoCHAR(5),CnoCHAR(6),GradeINT,PR

9、IMARYKEY(Sno,Cno),CONSTRAINTStudent_ReportFOREIGNKEY(Sno)REFERENCESStudents,CONSTRAINT Report_CourseFOREIGNKEY(Cno)REFERENCESCourses)1.定义基本表2.SQL Server支持的数据类型 TINYINT整数类型,其值按1个字节存储。SMALLINT整数类型,其值按2个字节存储。INTEGER或或INT整数类型,其值按4个字节存储。REAL实数类型,其值按4个字节存储。FLOAT实数类型,其值按8个字节存储。CHARTER(n)或CHAR(n)长度为n的字符类型,一

10、个字符占 一个字节。VARCHAR(n)最大长度为n的变长字符串,所占空间与 实际字符数有关。DATETIME日期时间类型,缺损格式为MM-DD-YYYYHH:MM:AM/PM。TIMESTAMP更新或插入一行时,系统自动记录的日 期时间类型。DECIMAL(n,m)指定长度为n,小数为m的实数3.向基本表添加元组 添加元组属于数据操纵的范畴,为了演示方便,先介绍简单的使用方法。由CREATE TABLE 命令只是创建了基本表的结构,必须使用INSERT命令向表中添加元组,其语句格式为:INSERT INTO (,VALUES(,);3.向基本表添加元组 INSERT INTO (,VALUE

11、S(,);例1.2 将一个学生元组(S01,王建平,男,21,自动化)添加到基本表StudentsINSERTINTOStudentsVALUES(S01,王建平,男,21,自动化)另外,向另外,向ReportsReports表插入一行表插入一行(S01,C01,92):INSERTINTOReportsVALUES(S01,C01,92);3.向基本表添加元组 向向ReportsReports表插入一行表插入一行(S01,C01,92)失败的原因:失败的原因:CREATETABLEReports(SnoCHAR(5),CnoCHAR(6),GradeINT,PRIMARYKEY(Sno,Cn

12、o),CONSTRAINTStudent_ReportFOREIGNKEY(Sno)REFERENCESStudents,CONSTRAINT Report_CourseFOREIGNKEY(Cno)REFERENCESCourses)因此,应该先:INSERTINTOCoursesVALUES(C01,英语,4)4.修改基本表 修改基本表命令的一般格式为:修改基本表命令的一般格式为:ALTERTABLEADD完整性约束DROP完整性约束名MODIFY说明说明:是要修改的基本表表名;ADD子句用于增加新列和新的完整性约束条件;DROP子句用于删除用于原有列的完整性约束条件;MODIFY子句用于

13、修改原有列的列名和数据类型。4.修改基本表例例1.3向基本表Students中增加“入学时间”属性列,其属性名为Sentrancedate,数据类型为DATETIME型。ALTER TABLE Students ADD Sentrancedate DATETIME例例1.4将Sage(年龄)的数据类型改为SMALLINT。ALTER TABLE Students ALTER COLUMN Sage SMALLINT修改原有的列定义有可能会破坏已有数据。例例1.5删除属性列Sage的命令为:ALTER TABLE Students DROP COLUMN Sage5.删除基本表 用DROPTAB

14、LE语句可删除基本表。其一般格式为:DROPTABLE例例1.6 删除Students表。DROPTABLEStudents问题在哪里?Reports中的Sno参照了Students表中的Sno1.2.3 建立与删除索引 1.建立索引的语句格式为:CREATEUNIQUECLUSTEREDINDEXON(,)说明:(1)是要为其创建索引的基本表的名字。每个还可以用来指定索引值按ASC(升序)或DESC(降序)方式排序,缺省值为ASC。(2)UNIQUE表明每一个索引值只对应唯一的一个元组,即索引值相同的元组只索引一次。(3)CLUSTERED表示要建立的索引是聚簇索引。聚簇索引是指索引项的顺序

15、与表中元组的物理顺序一致。1.2.3 建立与删除索引 例例1.81.8 建立索引,其中对Students表按Sno(学号)升序建唯一索引;对Courses表按Cno(课程号)升序建唯一索引;对Reports表按Sno(学号)升序和Cno(课程号)号降序建唯一索引。其语句为:CREATE UNIQUE INDEX Stu_Sno ON Students(Sno);CREATE UNIQUE INDEX Cou_Cno ON Courses(Cno);CREATE UNIQUE INDEX Rep_Scno ON Reports(Sno ASC,Cno DESC)1.2.3 建立与删除索引2.删除

16、索引的语句格式为:DROPINDEX例例1.9删除基本表Students和Reports上的Stu_Sno,Rep_SCno索引。DROPINDEXStudents.Stu_Sno,Reports.Rep_Scno1.3 SQL的数据查询 1.3.1 查询语句1.3.2 连接查询1.3.3 嵌套查询1.3.4 集合查询 查询需要先对基本表输入足够的数据1.3 SQL的数据查询SELECT语句的一般格式:SELECTALL|DISTINCT,FROM,WHERE GROUP BYHAVINGORDER BYASC|DESC说明:根据WHERE子句的条件,从FROM子句指定的基本表或视图中找出满足条件的元组,再按目标列表达式规定的属性列选出元组中对应的属性值形成结果表。GROUP子句要求将结果按的值进行分组。GROUP子句带HAVING短语时,输出满足指定条件的组。ORDER子句要求结果按的值升序或降序排序。1.3.1 简单的选择与投影查询 无条件查询 条件查询 查询结果排序 集函数的使用 查询结果分组1.无条件查询 在SELECT语句中不使用WHERE字句。请看有关例子:例1.12查询全

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号