文档详情

信息管理与数据库技术3-SQL定义.pptx

发布:2023-01-28约3.07千字共27页下载文档
文本预览下载声明
关系数据库标准语言SQL主讲人:文 娟第1页,共27页。 关系数据库标准语言SQLSQL概述数据定义查询数据更新视图数据控制嵌入式SQL小结第2页,共27页。 SQL概述SQL的特点1. 综合统一2. 高度非过程化3. 面向集合的操作方式4. 以同一种语法结构提供两种使用方法5. 语言简洁,易学易用第3页,共27页。 5. 语言简捷,易学易用第4页,共27页。 SQL概述数据定义查询数据更新视图数据控制嵌入式SQL小结第5页,共27页。 数 据 定 义第6页,共27页。 定义语句格式CREATE TABLE 表名 (列名 数据类型[ 列级完整性约束条件 ] [,列名 数据类型[ 列级完整性约束条件] ] … [,表级完整性约束条件 ] );表名:所要定义的基本表的名字列名:组成该表的各个属性(列)列级完整性约束条件:涉及相应属性列的完整性约束条件表级完整性约束条件:涉及一个或多个属性列的完整性约束条件 第7页,共27页。 例题[例1] 建立一个“学生”表Student,它由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成。其中学号不能为空,值是唯一的,并且姓名取值也唯一。 第8页,共27页。 例题 (续)第9页,共27页。 例题 (续)CREATE TABLE Student (Sno CHAR(5) NOT NULL UNIQUE, Sname CHAR(20) UNIQUE, Ssex CHAR(1) , Sage INT, Sdept CHAR(15));第10页,共27页。 定义基本表(续)常用完整性约束主码约束: PRIMARY KEY唯一性约束:UNIQUE非空值约束:NOT NULL参照完整性约束PRIMARY KEY与 UNIQUE的区别?第11页,共27页。 例题 (续)[例2] 建立一个“学生选课”表SC,它由学号Sno、课程号Cno,修课成绩Grade组成,其中(Sno, Cno)为主码。CREATE TABLE SC( Sno CHAR(5) , Cno CHAR(3) , Grade int, Primary key (Sno, Cno));第12页,共27页。 删除基本表 DROP TABLE 表名; ?基本表删除 数据、表上的索引都删除 表上的视图往往仍然保留,但 无法引用删除基本表时,系统会从数据字典中删去有关该基本表及其索引的描述 (标准中没有,认为表建立后就永久存在)第13页,共27页。 例题[例5] 删除Student表 DROP TABLE Student ;第14页,共27页。 修改基本表ALTER TABLE 表名[ ADD 新列名 数据类型 [ 完整性约束 ] ][ DROP 完整性约束名 ][ MODIFY 列名 数据类型 ];表名:要修改的基本表ADD子句:增加新列和新的完整性约束条件DROP子句:删除指定的完整性约束条件MODIFY子句:用于修改列名和数据类型第15页,共27页。 例题[例2] 向Student表增加“入学时间”列,其数据类型为日期型。 ALTER TABLE Student ADD Scome DATE;不论基本表中原来是否已有数据,新增加的列一律为空值。?第16页,共27页。 语句格式(续)删除属性列 直接/间接删除把表中要保留的列及其内容复制到一个新表中删除原表再将新表重命名为原表名直接删除属性列:(新)例:ALTER TABLE Student Drop Scome;第17页,共27页。 例题[例3] 将年龄的数据类型改为半字长整数。 ALTER TABLE Student MODIFY Sage SMALLINT;注:修改原有的列定义有可能会破坏已有数据 第18页,共27页。 例题[例4] 删除学生姓名必须取唯一值的约束。 ALTER TABLE Student DROP UNIQUE(Sname); 第19页,共27页。 建立与删除索引建立索引是加快查询速度的有效手段建立索引DBA或表的属主(即建立表的人)根据需要建立有些DBMS自动建立以下列上的索引 PRIMARY KEY UNIQUE维护索引 DBMS自动完成?使用索引 DBMS自动选择是否使用索引以及使用哪些索引第20页,共27页。 建立索引语句格式CREATE [UNIQUE] [
显示全部
相似文档