第六讲关系数据库标准语言SQL目录上一页下一页退出1第一页,共三十九页。目录上一页下一页退出本章要点6.1SQL语言的基本概述6.2数据定义6.3数据操纵6.4数据管理6.5SQL中的数据查询语句2第二页,共三十九页。目录上一页下一页退出6.1.1SQL语言的特点1.综合统一SQL语言集数据定义(DDL)、数据操纵(DML)、数据管理(DCL)的功能于一体,语言风格统一,可以独立完成数据库的全部操作,包括定义关系模式、录入数据及建立数据库、查询、更新、维护数据、数据库的重新构造、数据库安全性等一系列操作的要求,为数据库应用系统开发者提供了良好的环境。2.高度非过程化3.面向集合的操作方式4.以同一种语法结构提供两种使用方式5.语言简洁,易学易用6.1SQL语言的基本概述3第三页,共三十九页。目录上一页下一页退出6.1.2SQL语言的基本概念SQL语言支持关系型数据库的三级模式结构。其中外模式对应于视图(View)和部分基本表(BaseTable),模式对应于基本表,内模式对应于存储文件。基本表是本身独立存在的表,在SQL语言中一个关系对应一个表。一些基本表对应一个存储文件,一个表可以带若干索引,索引存放在存储文件中。存储文件的逻辑结构组成了关系型数据库的内模式。而存储文件的物理文件结构是任意的。视图是从基本表或其他视图中导出的表,它本身不独立存储在数据库中,也就是说数据库只存放在视力的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中,因此视图是一个虚表。6.1SQL语言的基本概述4第四页,共三十九页。目录上一页下一页退出数据定义语言DDL用于执行数据定义的操作,如创建或删除表、索引和视图之类的对象。由CREATE、DROP、ALTER命令组成,完成数据库对象的建立(CREATE)、删除(DROP)和修改(ALTER)。6.2.1定义(创建)表【格式】CREATETABLE<表名>(<字段名1><数据类型>[(<宽度>[,<小数位数>])][完整性约束][NULL|NOTNULL][,<字段名2>…])【功能】定义(也称创建)一个表。6.2数据定义5第五页,共三十九页。目录上一页下一页退出【例4-1】创建一个表STUD(学生信息表),它由以下字段组成:学号(C,10);姓名(C,8);性别(C,2);班级名(C,10);系别代号(C,2);地址(C,50);出生日期(D);是否团员(L);备注(M)。CREATETABLESTUD(学号C(10),姓名C(10),性别C(2),班级名C(10),系别代号C(2),地址C(50),出生日期D,是否团员L,备注M,照片G)LISTSTRUCTURE【例4-2】创建一个表SC(课程成绩表),它由以下字段组成:学号(C,10);课程号(C,2)。CREATETABLESC(学号C(10),课程号C(2))LISTSTRUCTURE6.2数据定义6第六页,共三十九页。目录上一页下一页退出6.2.2修改表【格式】ALTERTABLE<表名>[ADD<新字段名><数据类型>[(<宽度>[,<小数位数>])][完整性约束][NULL|NOTNULL]][DROP[完整性约束]][Alter<字段名><数据类型>]【功能】修改表结构。【说明】ADD子句用于增加指定表的字段变量名、数据类型、宽度和完整性约束条件;DROP子句用于删除指定的的完整性约束条件;MODIFY子句用于修改原有的字段变量的值。【例4-3】在课程成绩表SC中,增加一个成绩字段变量(N,3)。ALTERTABLESCADD成绩N(3)LISTSTRUCTURE6.2数据定义7第七页,共三十九页。目录上一页下一页退出6.2.3定义视图【格式】CREATEVIEW<视图名>AS【功能】利用SQL语句建立视图。【例4-4】利用SQL语句建立view1视图,要求按职工表中工资字段值降序,列出仓库号,职工号,工资,城市及面积字段。并将结果保存到table1中。opendatabase订货管理createviewview1asselect职工.仓库号,职工.职工号,职工.工资,仓库.城市,仓库.面积from仓库,职工where仓库.仓库号=职工.仓库号orderby职工.工资select*fromview1intodbftable1注:视图无法设置去向只能通过select*from<视图名>intotable<表名>6.2数据定义8第八页,共三十九页。目录上一页下一页退出6.2.4删除数据库【格式】DROPDATABASE<数据库名>【功能】删除指定数据库的结构和数据。【说明】谨慎使用。6.2.5删除表【格式】DROPTALBE<表名>【功能】删除指定表的结构和内容(包括...