《精编》关系数据库语言SQL

上传人:tang****xu2 文档编号:133152390 上传时间:2020-05-24 格式:PPT 页数:42 大小:425.50KB
返回 下载 相关 举报
《精编》关系数据库语言SQL_第1页
第1页 / 共42页
《精编》关系数据库语言SQL_第2页
第2页 / 共42页
《精编》关系数据库语言SQL_第3页
第3页 / 共42页
《精编》关系数据库语言SQL_第4页
第4页 / 共42页
《精编》关系数据库语言SQL_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《《精编》关系数据库语言SQL》由会员分享,可在线阅读,更多相关《《精编》关系数据库语言SQL(42页珍藏版)》请在金锄头文库上搜索。

1、第5章关系数据库语言SQL 数据库原理及应用 教学内容 SQL的功能与特点表的基本操作SQL的数据查询SQL的视图操作 第1讲SQL的功能与特点 第5章关系数据库语言SQL 主要内容 SQL的产生和发展SQL的功能SQL的特点 一 SQL的产生和发展 SQL语言的发展 Chamberlin SEQUEL SQL 大型数据库SybaseINFORMIXSQLServerOracleDB2INGRES 小型数据库FoxProAccess 结构化查询语言StructuredQueryLanguage 一 SQL的产生和发展 续 1986年10月 美国国家标准化协会 ANSI 发布了ANSI文件X3

2、135 1986 数据库语言SQL 1987年6月国际标准化组织 ISO 采纳其为国际标准 SQL86 1989年10月 SQL89 1992年8月 SQL2 SQL92 标准 1999年 SQL3 SQL99 SQL成为国际标准后 由于各种类型的计算机和DBS都采用SQL作为其存取语言和标准接口 从而使数据库世界有可能链接为一个统一的整体 这个前景意义十分重大 二 SQL的功能 1 数据定义功能 定义数据库的逻辑结构 包括基本表 视图 索引等 2 数据操作功能 数据查询和数据更新 3 数据控制功能 包括用户授权 基本表和视图的授权 事务控制 数据完整性和安全性控制等 三 SQL的特点 1 工

3、作方式交互式命令方式 在联机终端上 通过直接输入SQL命令对数据库进行操作 嵌入式工作方式 通过嵌入到高级语言程序中实现对数据库的操作 2 SQL支持数据库的三级模式结构 第2节表的基本操作 第5章关系数据库语言SQL 主要内容 基本表的定义基本表的修改表的撤消数据插入 修改与删除 CREATETABLE 不能与SQL语言中的保留字同名不能与其它表名或视图名同名是以字母开头 由字母 数字和下划线 组成的字符串 长度不超过30个字符 一 基本表的定义 一个表可以有若干列 但至少要有一列 每一列必须有一个列名和相应的数据类型 同一表中的列名不能重名 指定基本表中属性的取值特性和范围 所谓 完整性约

4、束 是为保护数据库中的数据所作的各种检查或数据应满足的约束条件 当不选择该项时 默认值为NULL 表示该列可以为空值 当选择该项时 由用户根据各属性列的数据特点和要求给出该列数据的完整性约束条件 NULL NOTNULL PRIMARYKEY DEFAULT CHECK UNIQUE NOTNULLUNIQUE 由用户根据表中各属性列数据的特点和要求给出所在表的数据的约束条件 包括 表的主键约束子句 表的外键约束子句和表的检验约束CHECK子句 一 基本表的定义 续 数据类型 整数数据 精确数值 近似浮点数值 日期时间数据 bigint int smallint tinyint numeric

5、和decimal float和real datetime与smalldatetime 字符串数据 Unicode字符串数据 二进制数据 货币数据 char varchar text nchar nvarchar与ntext binary varbinary image money与smallmoney 标记数据 timestamp和uniqueidentifier 示例 教学管理数据库系统中的学习关系SC CREATETABLESC S CHAR 9 C CHAR 7 GRADEINT 列名数据类型 示例 学习关系SC的创建语句 定义数据表的约束 正确性 有效性 相容性 数据的完整性 约束 C

6、onstraint 默认 Default 规则 Rule 触发器 Trigger 存储过程 StoredProcedure SQLServer的数据完整性机制 CONSTRAINT 完整性约束的基本语法格式 NULL NOTNULL UNIQUE PRIMARYKEY FOREIGNKEY CHECK 定义数据表的约束 定义方式 如果表中只有一个列是主键时 可在基本表定义的处 标识相应的约束关键字 说明某个属性是主键或候选键 例 教学管理数据库系统中的专业关系SSCREATETABLESS SCODE CHAR 5 PRIMARYKEY SSNAMEVARCHAR 30 NOTNULL 1 主

7、键约束 1 主键约束 续 如果表的主键由一列或多列组成 在基本表定义的处 通过键约束子句说明某个特定的属性或属性集构成主键或候选键 PRIMARYKEY 1 主键约束 例 例 教学管理数据库系统中的学习关系SC CREATETABLESC S CHAR 9 C CHAR 7 GRADEINT PRIMARYKEY S C CONSTRAINT FOREIGNKEYREFERENCES 外部键 从表 主键 主表 引用 2 FOREIGNKEY约束 外键约束 CREATETABLESC S CHAR 9 C CHAR 7 GRADEINT PRIMARYKEY S C FOREIGNKEY S R

8、EFERENCESS S FOREIGNKEY C REFERENCESC C 示例 教学管理数据库系统中的学习关系SC 2 外键约束 例 3 CHECK约束 CHECK约束是用来指定某一个属性或多个属性可以满足的条件 可以在基本表定义的或进行说明CHECK CREATETABLES S CHAR 9 PRIMARYKEY SNAMECHAR 10 NOTNULL SSEXCHAR 2 CHECK SSEXIN 男 女 SBIRTHINDATENOTNULL PLACEOFBCHAR 16 SCODECHAR 5 NOTNULL CLASSCHAR 5 NOTNULL 示例 教学管理数据库系统

9、中的学生关系S 3 CHECK约束 例 示例 教学管理数据库系统中的学习关系SC CREATETABLESC S CHAR 9 C CHAR 7 GRADEINT PRIMARYKEY S C FOREIGNKEY S REFERENCESS S FOREIGNKEY C REFERENCESC C CHECK GRADEBETWEEN0AND100 3 CHECK约束 例 4 缺省值约束 用关键字DEFAULT说明 用于给所在的列设置一个缺省值 即在插入一个新记录时 如果带有DEFAULT选项的列没有数据 就将缺省值作为该列的数据 DEFAULT 示例 教学管理数据库系统中的学习关系SC C

10、REATETABLESC S CHAR 9 C CHAR 7 GRADEINTDEFAULT 0 PRIMARYKEY S C FOREIGNKEY S REFERENCESS S FOREIGNKEY C REFERENCESC C CHECK GRADEBETWEEN0AND100 4 缺省值约束 例 5 非空约束 使用关键字NOTNULL说明 用于指出某属性列不能为空值 每一个表中至少应有一个列的可选项为NOTNULL主键列已隐含可选项为NOTNULL 示例 教学管理数据库系统中的学生关系S CREATETABLES S CHAR 9 PRIMARYKEY SNAMECHAR 10 NO

11、TNULL SSEXCHAR 2 CHECK SSEXIN 男 女 SBIRTHINDATENOTNULL PLACEOFBCHAR 16 SCODECHAR 5 NOTNULL CLASSCHAR 5 NOTNULL 5 非空约束 例 建立包含完整性定义的学生表 CREATETABLES SNoCHAR 6 CONSTRAINTS PrimPRIMARYKEY SNCHAR 8 CONSTRAINTSN ConsNOTNULL SexCHAR 2 DEFAULT 男 AgeINTCONSTRAINTAge ConsNOTNULLCONSTRAINTAge ChkCHECK AgeBETWEE

12、N15AND50 DeptCHAR 10 CONSTRAINTDept ConsNOTNULL 表创建实例 二 基本表的修改 1 改变表名修改表名的语句格式为 RENAMETO 例 将SS表改名为SS1 RENAMESSTOSS1 2 增加列 在表的最后一列后面增加新的一列 ALTERTABLEADD 例 给学生表新增一个属性 民族 数据类型为CHAR 10 ALTERTABLESADDnationalityCHAR 10 3 删除列 删除表中不再需要的列 格式为 ALTERTABLEDROP CASCADE RESTRICT CASCADE表示所有引用到该列的视图或有关约束一并删除 REST

13、RICT表示在没有视图或有关约束引用时 该列才能被删除 否则拒绝操作 例 删除教师表T中的出生年月 ALTERTABLETDROPTBIRTHINRESTRICT 4 修改列的定义 修改列的定义 包括列的类型 长度 格式为 ALTERTABLEMODIFY 例 将专业表SS中的专业名称列长度由30改为40 ALTERTABLESSMODIFYSSNAMEVARCHAR 40 三 表的撤消 将不需要的表或定义错误的表删除掉 格式为 DROPTABLE CASCADE RESTRICT 当一个表被撤消时 该表中的数据也一同被删除 指出哪些列需要插入数据 指出要插入的列的具体值 四 数据插入 修改与

14、删除 1 数据插入向表中插入一行 单元组 数据 INSERTINTO VALUES 可省 1 数据插入示例 给学习关系SC中插入王丽丽同学 学号为200401003 学习计算机网络课 课程号为C403001 的成绩 89分 INSERTINTOSC S C GRADE VALUES 200401003 C403001 89 2 数据修改 UPDATESET WHERE 2 数据修改示例 将所有女同学的专业改为S0404UPDATESSETSCODE S0404 WHERESSEX 女 3 数据删除 DELETEFROM WHERE 示例在学生关系S中删除学号为200403001的学生信息 DELETEFROMSWHERES 200403001 小结 1 表的操作 1 表的定义CREATETABLE 2 表的修改RENAME ALTERTABLE 3 表的撤消DROPTABLE2 数据的操作 1 数据插入INSERTINTO 2 数据修改UPDATESET 3 数据删除DELETEFROM

展开阅读全文
相关资源
相关搜索

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

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