




已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 一 SQL概述 2 一 SQL概述 SQL对关系数据库模式的支持 基本表是本身独立存在的表 在SQL中 一个关系对应一个基本表 视图是一个虚表 是从一个或多个基本表中导出的表 在关系数据库中只存储视图的定义而不存放视图对应的数据 这些数据仍存放在导出视图的基本表中 需要时临时从基本表中提取数据 3 二 SQL的数据定义 SQL支持数据库系统的三级模式结构 其模式 外模式和内模式中的基本对象有表 视图和索引 因此 SQL的数据定义功能包括定义表 定义视图和定义索引 SQL的数据定义语句 4 二 SQL的数据定义 一 基本表的定义CREATETABLE 所要定义的基本表的名字 组成该表的各个属性 列 涉及相应属性列的完整性约束条件 涉及一个或多个属性列的完整性约束条件定义表的各个属性时需要指明数据类型和长度 不同的RDBMS中支持的数据类型不完全相同 5 二 SQL的数据定义 SQLServer中常用的完整性约束 主码约束 PRIMARYKEY唯一性约束 UNIQUE非空值约束 NOTNULL参照完整性约束 外码约束 FOREIGNKEY REFERENCES检查约束 CHECK默认值约束 DEFAULT 6 二 SQL的数据定义 二 基本表的修改ALTERTABLE ADD 完整性约束 DROPCONSTRAINT ALTERCOLUMN 要修改的基本表ADD子句 向表中添加新列和相关的完整性约束条件DROP子句 删除指定的完整性约束条件ALTERCOLUMN子句 用于修改列名和数据类型 7 二 SQL的数据定义 三 基本表的删除DROPTABLE 基本表删除后 表中的数据以及此表上建立的索引 视图 触发器等都将自动被删除 因此 执行该语句时一定要格外小心 另外 DROPTABLE不能用于删除由外键约束引用的表 必须先删除有外键约束条件的表 然后才能删除其引用的表 8 二 SQL的数据定义 一 索引的建立语句格式CREATE UNIQUE CLUSTER INDEXON 用指定要建索引的基本表名字索引可以建立在该表的一列或多列上 各列名之间用逗号分隔用指定索引值的排列次序 升序 ASC 降序 DESC 缺省值 ASCUNIQUE表明此索引的每一个索引值只对应唯一的数据记录CLUSTER表示要建立的索引是聚簇索引 9 二 SQL的数据定义 唯一值索引对于已含重复值的属性列不能建UNIQUE索引对某个列建立UNIQUE索引后 插入新记录时DBMS会自动检查新记录在该列上是否取了重复值 这相当于增加了一个UNIQUE约束 10 二 SQL的数据定义 聚簇索引建立聚簇索引后 基表中数据也需要按指定的聚簇属性值的升序或降序存放 也即聚簇索引中索引项的顺序与表中记录的物理顺序一致在一个基本表上最多只能建立一个聚簇索引聚簇索引的用途 对于某些类型的查询 可以提高查询效率聚簇索引的适用范围很少对基表进行增删操作很少对其中的变长列进行修改操作 11 二 SQL的数据定义 二 索引的删除DROPINDEX 删除索引时 系统会从数据字典中删去有关该索引的描述 例3 9删除Student表中的Stusno索引 DROPINDEXStusno 12 三 SQL的数据查询 1 SELECT语句的一般格式SELECTFROM WHERE GROUPBY HAVING ORDERBY ASC DESC 13 三 SQL的数据查询 SELECT子句 指定要显示的属性列FROM子句 指定查询对象 基本表或视图 WHERE子句 指定查询条件GROUPBY子句 对查询结果按指定列的值分组 该属性列值相等的元组为一个组 通常会在每组中作用集函数 HAVING短语 筛选出只有满足指定条件的组ORDERBY子句 对查询结果表按指定列值的升序或降序排序 14 三 SQL的数据查询 2 单表查询查询仅涉及一个表或一个视图 是一种最简单的查询操作 1 选择表中的若干列 2 选择表中的若干元组 3 ORDERBY子句 对查询结果排序 4 聚集函数 5 GROUPBY子句 对查询结果分组 15 三 SQL的数据查询 1 选择表中的若干列 查询经过计算的值 SELECT子句的为表达式表中的属性列 列名 列别名 算术表达式字符串常量函数指定列别名 AS 或 16 三 SQL的数据查询 2 选择表中的若干元组消除取值重复的行 在SELECT子句中使用DISTINCT短语消除取值重复的行 若没有指定DISTINCT 则默认为ALL 即结果中保留重复的值查询满足条件的元组 查询满足指定条件的元组通过使用WHERE子句实现 17 三 SQL的数据查询 WHERE子句常用的查询条件 常用的查询条件 18 三 SQL的数据查询 使用谓词IN NOTIN 用逗号分隔的一组取值 NOT LIKE ESCAPE 含义是查询指定的属性列值与相匹配的元组 指定匹配模板匹配模板 固定字符串或含通配符的字符串当匹配模板为固定字符串时 可以用 运算符取代LIKE谓词用 或运算符取代NOTLIKE谓词 19 三 SQL的数据查询 通配符 百分号 代表任意长度 长度可以为0 的字符串 下横线 代表任意单个字符当用户要查询的字符串本身就含有 或 时 要使用ESCAPE 短语对通配符进行转义 使用谓词ISNULL或ISNOTNULL ISNULL 不能用 NULL 代替用逻辑运算符AND和OR来联结多个查询条件AND的优先级高于OR可以用括号改变优先级 20 三 SQL的数据查询 3 ORDERBY子句语法格式为 ORDERBY ASC DESC 可以按一个或多个属性列排序升序 ASC 降序 DESC 缺省值为升序当排序列含空值时ASC 排序列为空值的元组最后显示DESC 排序列为空值的元组最先显示 21 三 SQL的数据查询 4 5类主要集函数计数COUNT DISTINCT ALL COUNT DISTINCT ALL 计算总和SUM DISTINCT ALL 计算平均值AVG DISTINCT ALL 求最大值MAX DISTINCT ALL 求最小值MIN DISTINCT ALL DISTINCT短语 在计算时要取消指定列中的重复值ALL短语 不取消重复值ALL为缺省值 22 三 SQL的数据查询 5 GROUPBY子句含义 用GROUPBY子句将查询的结果按指定的列进行分组 即将指定列值相同的元组分为同一个组 目的 细化聚集函数的作用对象未对查询结果分组 聚集函数将作用于整个查询结果对查询结果分组后 聚集函数将分别作用于每个组 即相当于每个分组均有一个函数值 23 三 SQL的数据查询 连接查询嵌套查询 不相关子查询 集合查询 24 四 数据更新 1 插入数据2 修改数据3 删除数据 25 四 数据更新 1 两种插入数据方式 1 插入单个元组 2 插入子查询结果语句格式INSERTINTO SELECT子查询 26 四 数据更新 2 数据修改语句格式UPDATESET WHERE 功能修改指定表中满足WHERE子句条件的元组 其中SET子句指定被修改的列及修改后的值 当没有WHERE子句时 表中所有元组的指定列都将被修改 27 四 数据更新 3 数据删除语句格式 DELETEFROM WHERE 功能删除指定表中满足WHERE子句条件的元组 若不带WHERE子句 将删除表中所有元组 使表变为空表 28 五 视图 视图的特点虚表 是从一个或几个基本表 或视图 导出的表只存放视图的定义 不会出现数据冗余基本表中的数据发生变化 从视图中查询出的数据也随之改变 29 五 视图 视图的定义语句格式 CREATEVIEW AS WITHCHECKOPTION WITHCHECKOPTION 强制通过视图更新的数据必须满足SELECT子查询中指定的条件 DBMS执行CREATEVIEW语句时只是把视图的定义存入数据字典 并不执行其中的SELECT语句 在对视图查询时 按视图的定义从基本表中将数据查出 30 五 视图 DROPVIEW 该语句从数据字典中删除指定的视图定义由该视图导出的其他视图定义仍在数据字典中 但已不能使用 必须显式删除删除基本表时 由该基本表导出的所有视图定义都必须显式删除例如删除视图IS S1DROPVIEWIS S1 31 五 视图 查询视图从用户角度 查询视图与查询基本表相同DBMS实现视图查询的方法实体化视图 ViewMaterialization 视图消解法 ViewResolution 32 五 视图 更新视图用户角度 更新视图与更新基本表相同视图是不存储数据的虚表 所以对视图的更新要转换为对基本表的更新 DBMS实现视图更新的方法 视图实体化法 ViewMaterialization 视图消解法 ViewResolution 指定WITHCHECKOPTION子句后DBMS在更新视图时会进行检查 防止用户通过视图对不属于视图范围内的基本表数据进行更新 33 五 视图 视图的作用1 能够简化用户的操作2 使用户能以多种角度看待同一数据3 对重构数据库提供了一定程度的逻辑独立性4 视图能够对机密数据提供安全保护 34 六 SQL提供的安全性与完整性 SQL中数据控制功能包括事务管理功能和数据保护功能 即 数据库的恢复并发控制数据库的安全性数据库的完整性 35 六 SQL提供的安全性与完整性 数据库的安全性是指保护数据库防止被不合法的使用所造成的数据泄露 更改或破坏 安全性控制是指采取各种方法措施以防范可能的对数据库的非法访问 36 六 SQL提供的安全性与完整性 数据库的完整性是指数据的正确性和相容性 它是防止不合语义的数据进入数据库 是确保数据库中数据一致 正确及符合企业规则的一种思想和手段 完整性约束条件 加在数据库数据之上的语义约束条件完整性检查 DBMS中检查数据是否满足完整性条件的机制称为完整性检查 37
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全施工规范课件
- 官方的购房合同2篇
- 农业碳汇项目碳排放权交易市场潜力与2025年政策建议报告
- 农业碳汇项目碳排放权交易市场交易主体行为与市场发展研究
- 理想信念主题课件
- 农业温室项目2025年投资策略与风险防范研究报告
- 广西启点工程咨询服务有限公司45t-h循环流化床锅炉技改项目变更(非辐射类)环境影响报告表
- 农业气象服务在设施农业中的应用效果评价报告
- 安全教育生产培训课件
- 狼的课件教学课件
- 2025-2026学年地质版(2024)小学体育与健康三年级(全一册)教学设计(附目录P123)
- 2025年湖南郴州市北湖区引进高层次人才和招聘事业单位工作人员28人备考练习题库及答案解析
- 项目四旅游电子商务网络营销92课件
- 麻醉深度监测-洞察及研究
- 2025年口腔修复学笔试题及答案
- 桥梁养护应急知识培训课件
- 2025-2026学年人教版(2024)初中化学九年级上册教学计划及进度表
- 智能化硬件基础知识培训课件
- 2025年小学生国学知识竞赛试题库附答案
- 水上服务区(加油站)项目可行性研究报告
- 浙江国企招聘2025浙江省储备粮管理集团有限公司所属企业招聘7人(第一批)笔试参考题库附带答案详解(10套)
评论
0/150
提交评论