文档详情

第三章 关系数据库标准语言SQL-1.基本查询.ppt

发布:2018-06-24约1.2万字共77页下载文档
文本预览下载声明
An Introduction to Database System 上海第二工业大学 计算机与信息学院 第三章 关系数据库标准语言SQL 3.1 SQL概述 3.2 数据定义 3.3 查询 3.4 数据更新 3.5 视图 3.6 数据控制 3.1 SQL概述 SQL的特点 1. 综合统一 2. 高度非过程化 3. 面向集合的操作方式 4. 以同一种语法结构提供两种使用方法 5. 语言简洁,易学易用 5. 语言简捷,易学易用 SQL 的各种版本 SQL标准的发展:从SQL/86-SQL/89-SQL/92-SQL99-SQL2003(P79) 各种DBMS的采用的SQL和标准SQL有所不同如: SQL Server/Sybase采用的SQL为Transact-SQL Oracle采用的SQL为PL/SQL(Procedural Language/Structured Query Language ) 不同之处包括: 基本语句中子句的不同 功能有扩展 第三章 关系数据库标准语言SQL 3.1 SQL概述 3.2 数据定义 3.3 查询 3.4 数据更新 3.5 视图 3.6 数据控制 3.7 嵌入式SQL 3.8 小结 3.2 数 据 定 义 3.2.1 定义语句格式 CREATE TABLE 表名 (列名 数据类型[ 列级完整性约束条件 ] [,列名 数据类型[ 列级完整性约束条件] ] … [,表级完整性约束条件 ] ); 表名:所要定义的基本表的名字 列名:组成该表的各个属性(列) 列级完整性约束条件:涉及相应属性列的完整性约束条件 表级完整性约束条件:涉及一个或多个属性列的完整性约束条件 例题 [例1] 建立一个“学生”表Student,它由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成。其中学号不能为空,值是唯一的,并且姓名取值也唯一。 CREATE TABLE Student (Sno CHAR(5) PRIMARY KEY, Sname CHAR(20) UNIQUE, Ssex CHAR(1), Sage INT, Sdept CHAR(15)) 定义基本表(续) 常用完整性约束 主码约束: PRIMARY KEY 唯一性约束:UNIQUE 非空值约束:NOT NULL 参照完整性约束 PRIMARY KEY与 UNIQUE的区别? 例题 (续) [例2] 建立一个“学生选课”表SC,它由学号Sno、课程号Cno,成绩Grade组成,其中(Sno, Cno)为主码。 CREATE TABLE SC( Sno CHAR(5) , Cno CHAR(3) , Grade int, Primary key (Sno, Cno)); 三、删除基本表 DROP TABLE 表名; ? 数据、表上的索引都删除 [例3] 删除Student表 DROP TABLE Student ; 二、修改基本表 ALTER TABLE 表名 [ ADD 新列名 数据类型 [ 完整性约束 ] ] [ DROP 完整性约束名 ] [ MODIFY 列名 数据类型 ]; 表名: 要修改的基本表 ADD子句: 增加新列和新的完整性约束条件 DROP子句: 删除指定的完整性约束条件 MODIFY子句:用于修改列名和数据类型 例题 [例4] 向Student表增加“入学时间”列,其数据类型为日期型。 ALTER TABLE Student ADD Scome DATE SQL Server: ALTER TABLE Student ADD Scome DATETIME 若基本表中原来是否已有数据,新增加的列一律为空值。? 语句格式(续) 删除属性列 间接删除 把表中要保留的列及其内容复制到一个新表中 删除原表 再将新表重命名为原表名 直接删除属性列: [例5]:标准:ALTER TABLE Student Drop Scome SQL Server:ALTER TABLE Student Drop Column Scome [例6] 将年龄的数据类型改为半字长整数。 标准SQL: ALTER TABLE Student MODIFY Sage SMALLINT; SQL Server: ALTER TABLE Student ALTER COLUMN Sage SMALLINT 注:修改原有的列定义有可能会破坏已有数据 [例7] 删除学生姓名必须
显示全部
相似文档