Less08_Schema模式.ppt

上传人:豆**** 文档编号:24404078 上传时间:2022-07-04 格式:PPT 页数:46 大小:1.06MB
返回 下载 相关 举报
Less08_Schema模式.ppt_第1页
第1页 / 共46页
Less08_Schema模式.ppt_第2页
第2页 / 共46页
点击查看更多>>
资源描述

《Less08_Schema模式.ppt》由会员分享,可在线阅读,更多相关《Less08_Schema模式.ppt(46页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、版权所有 2008,Oracle。保留所有权利。 8-1 Less08_Schema模式 Four short words sum up what has lifted most successful Four short words sum up what has lifted most successful individuals above the crowd: a little bit more. individuals above the crowd: a little bit more. -author -author -date-date版权所有 2008,Oracle。保留所有

2、权利。 8-2 课程目标课程目标 学完本课后,应能完成以下工作:学完本课后,应能完成以下工作: 定义方案对象和数据类型定义方案对象和数据类型 创建和修改表创建和修改表 定义约束条件定义约束条件 查看表列和表内容查看表列和表内容 创建索引创建索引 创建视图创建视图 创建序列创建序列 说明临时表的用法说明临时表的用法 版权所有 2008,Oracle。保留所有权利。 8-3 什么是方案什么是方案HR 方案方案 HR 用户用户 拥有拥有 方案方案约束条件约束条件 索引索引 视图视图 序列序列 临时表临时表 数据字典数据字典 版权所有 2008,Oracle。保留所有权利。 8-4 版权所有 2008

3、,Oracle。保留所有权利。 8-5 访问方案对象访问方案对象 版权所有 2008,Oracle。保留所有权利。 8-6 命名数据库对象命名数据库对象 名称长度必须为名称长度必须为 1 至至 30 个字节,但以下情况例外:个字节,但以下情况例外: 数据库名称限制为数据库名称限制为 8 个字节。个字节。 数据库链接名最长可为数据库链接名最长可为 128 个字节。个字节。 不带引号的名称不得为不带引号的名称不得为 Oracle 保留字。保留字。 不带引号的名称必须以数据库字符集中的字母字符开头。不带引号的名称必须以数据库字符集中的字母字符开头。 不建议使用带引号的名称。不建议使用带引号的名称。

4、版权所有 2008,Oracle。保留所有权利。 8-7 版权所有 2008,Oracle。保留所有权利。 8-8 指定表中的数据类型指定表中的数据类型 公用数据类型:公用数据类型: CHAR(size BYTE|CHAR):长度为长度为 size 个字节或个字节或字符的固定长度字符数据字符的固定长度字符数据 VARCHAR2(size BYTE|CHAR):最大长度为最大长度为 size 个字节或字符的可变长度字符串个字节或字符的可变长度字符串 DATE:有效日期范围为公元前有效日期范围为公元前 4712 年年 1 月月 1 日至公元日至公元 9999 年年 12 月月 31 日日 NUMB

5、ER(p,s):精度为精度为 p 且小数位数为且小数位数为 s 的数字的数字 版权所有 2008,Oracle。保留所有权利。 8-9 版权所有 2008,Oracle。保留所有权利。 8-10 版权所有 2008,Oracle。保留所有权利。 8-11 创建和修改表创建和修改表 指定表名和方案。 指定表名和方案。 指定列名、数据类型和长度。 指定列名、数据类型和长度。 版权所有 2008,Oracle。保留所有权利。 8-12 创建和修改表创建和修改表 CREATE TABLE shopowner.jobs (Job_id NUMBER(5), Job_title VARCHAR2(30),

6、min_salary NUMBER(6),max_salary NUMBER(6) TABLESPACE users;ALTER TABLE shopowner.jobs ADD bonus NUMBER(6);版权所有 2008,Oracle。保留所有权利。 8-13 了解数据完整性了解数据完整性 JOB_HISTORY EMPLOYEE_ID (PK,FK) START_DATE (PK) END_DATE JOB_ID (FK) DEPARTMENT_ID (FK) EMPLOYEES EMPLOYEE_ID (PK) FIRST_NAME LAST_NAME EMAIL PHONE_N

7、UMBER HIRE_DATE JOB_ID (FK) SALARY COMMISION_PCT MANAGER_ID (FK) DEPARTMENT_ID (FK) DEPARTMENTS DEPARTMENT_ID (PK) DEPARTMENT_NAME MANAGER_ID LOCATION_ID (FK) JOBS JOB_ID (PK) JOB_TITLE MIN_SALARY MAX_SALARY REGIONS REGION_ID (PK) REGION_NAME COUNTRIES COUNTRY_ID (PK) COUNTRY_NAME REGION_ID (FK) LOC

8、ATIONS LOCATION_ID (PK) STREET_ADDRESS POSTAL_CODE CITY STATE_PROVINCE COUNTRY_ID (FK) 方案方案 约束条件约束条件 索引索引 视图视图 序列序列 临时表临时表 数据字典数据字典 版权所有 2008,Oracle。保留所有权利。 8-14 版权所有 2008,Oracle。保留所有权利。 8-15 定义约束条件定义约束条件 版权所有 2008,Oracle。保留所有权利。 8-16 违反约束条件违反约束条件 违反约束条件的示例包括:违反约束条件的示例包括: 插入重复的主键值插入重复的主键值 删除引用完整性约束条

9、件中的子行的父行删除引用完整性约束条件中的子行的父行 更新列值后超出了检查约束条件的范围更新列值后超出了检查约束条件的范围 103 102 101 101 X 5 16 49 22 ID AGE 30 版权所有 2008,Oracle。保留所有权利。 8-17 约束条件状态约束条件状态 ENABLENOVALIDATE ENABLEVALIDATE 现有数据现有数据 新数据新数据 DISABLENOVALIDATE DISABLEVALIDATE 无无 DML 版权所有 2008,Oracle。保留所有权利。 8-18 版权所有 2008,Oracle。保留所有权利。 8-19 约束条件检查约

10、束条件检查 检查约束条件的时机:检查约束条件的时机: 执行语句时(对于非延迟约束条件)执行语句时(对于非延迟约束条件) 发出发出 COMMIT 时(对于延迟约束条件)时(对于延迟约束条件) 案例:案例:DML 语句后接语句后接 COMMIT 已检查非延迟约束条件已检查非延迟约束条件 已发出已发出 COMMIT 已检查延迟约束条件已检查延迟约束条件 COMMIT 已完成已完成 1324版权所有 2008,Oracle。保留所有权利。 8-20 版权所有 2008,Oracle。保留所有权利。 8-21 使用使用 SQL 创建约束条件:示例创建约束条件:示例 cbaALTER TABLE coun

11、triesADD (UNIQUE(country_name) ENABLE NOVALIDATE);ALTER TABLE shopowner.jobs ADD CONSTRAINT job_pk PRIMARY KEY (job_id);CREATE TABLE emp (emp_no NUMBER PRIMARY KEY,Last_name VARCHAR2(30), first_name VARCHAR2(30), dept_no NUMBER, Mgr_no NUMBER, hire_date date,salary NUMBER,CONSTRAINT Mgr_FK FOREIGN K

12、EY (mgr_no) REFERENCES emp(emp_no), CONSTRAINT ck1 CHECK (salary 0); 版权所有 2008,Oracle。保留所有权利。 8-22 版权所有 2008,Oracle。保留所有权利。 8-23 查看表中的列查看表中的列 版权所有 2008,Oracle。保留所有权利。 8-24 查看表的内容查看表的内容 版权所有 2008,Oracle。保留所有权利。 8-25 表操作表操作 版权所有 2008,Oracle。保留所有权利。 8-26 删除表删除表 删除一个表将会删除:删除一个表将会删除: 数据数据 表结构表结构 数据库触发器数据

13、库触发器 相应的索引相应的索引 关联的对象权限关联的对象权限 DROP TABLE 语句的可选子句:语句的可选子句: CASCADE CONSTRAINTS:相关的引用完整性约束条件相关的引用完整性约束条件 PURGE:无法闪回无法闪回 DROP TABLE hr.employees PURGE;版权所有 2008,Oracle。保留所有权利。 8-27 截断表截断表 截断表时会删除数据并释放已用空间。截断表时会删除数据并释放已用空间。 会截断相应的索引。会截断相应的索引。 TRUNCATE TABLE hr.employees;版权所有 2008,Oracle。保留所有权利。 8-28 索引

14、索引 22 22 索引索引 表表 关键字关键字 行指针行指针 WHERE key = 22 方案方案约束条件约束条件 索引索引 视图视图 序列序列 临时表临时表 数据字典数据字典 版权所有 2008,Oracle。保留所有权利。 8-29 索引类型索引类型 有多种类型的索引结构,可以根据需要使用。最常用的两种有多种类型的索引结构,可以根据需要使用。最常用的两种类型是:类型是: B 树索引树索引 默认的索引类型;采用平衡树的形式默认的索引类型;采用平衡树的形式 位图索引:位图索引: 每个不同的索引值都有一个位图每个不同的索引值都有一个位图 每一位代表一行,该行可能包含,也可能不包含索引值。每一位

15、代表一行,该行可能包含,也可能不包含索引值。 最适合于低基数列最适合于低基数列 版权所有 2008,Oracle。保留所有权利。 8-30 B 树索引树索引 索引条目头索引条目头 键列长度键列长度 键列值键列值 ROWID 根根 分支分支 叶叶 索引条目索引条目 版权所有 2008,Oracle。保留所有权利。 8-31 版权所有 2008,Oracle。保留所有权利。 8-32 位图索引位图索引 关键字关键字 开始开始 ROWID 结束结束 ROWID 位图位图 表表 索引索引块块 10 块块 11 块块 12 文件文件 3 版权所有 2008,Oracle。保留所有权利。 8-33 版权所

16、有 2008,Oracle。保留所有权利。 8-34 索引选项索引选项 唯一索引:确保每个索引值都是唯一的唯一索引:确保每个索引值都是唯一的 反向关键字索引:按相反顺序存储其键值字节反向关键字索引:按相反顺序存储其键值字节 组合索引:是基于多列的索引组合索引:是基于多列的索引 基于函数的索引:是基于函数返回值的索引基于函数的索引:是基于函数返回值的索引 压缩索引:会删除重复的键值压缩索引:会删除重复的键值 顺序:索引可按升序或降序存储其键值顺序:索引可按升序或降序存储其键值 版权所有 2008,Oracle。保留所有权利。 8-35 版权所有 2008,Oracle。保留所有权利。 8-36

17、创建索引创建索引 CREATE INDEX my_index ONemployees(last_name DESC, first_name);版权所有 2008,Oracle。保留所有权利。 8-37 视图视图 COUNTRY 表表 LOCATION 表表 AU_BR_VIEW view 方案方案约束条件约束条件 索引索引 视图视图 联接联接 CREATE VIEW au_br_view AS SELECT location_id, country_name FROM locations l, countries cWHERE l.country_id = c.country_id AND c

18、.country_id in (AU,BR);版权所有 2008,Oracle。保留所有权利。 8-38 创建视图创建视图 版权所有 2008,Oracle。保留所有权利。 8-39 序列序列 序列是按照某种模式自动生成整数的一种机制。序列是按照某种模式自动生成整数的一种机制。 序列具有名称,指明了请求下一个值时引用序列的方式。序列具有名称,指明了请求下一个值时引用序列的方式。 序列不与任何特定的表或列相关联。序列不与任何特定的表或列相关联。 增长方式可为升序,也可为降序。增长方式可为升序,也可为降序。 编号之间的间隔可为任意大小。编号之间的间隔可为任意大小。 达到上限或下限时,序列可以循环使

19、用。达到上限或下限时,序列可以循环使用。 12345方案方案约束条件约束条件 索引索引 视图视图 序列序列 临时表临时表 数据字典数据字典 版权所有 2008,Oracle。保留所有权利。 8-40 创建序列创建序列 版权所有 2008,Oracle。保留所有权利。 8-41 版权所有 2008,Oracle。保留所有权利。 8-42 使用序列使用序列 SQL CREATE TABLE orders (id NUMBER, ord_date DATE, prod_id NUMBER, prod_desc VARCHAR2(30) );Table created.SQL INSERT INTO

20、orders VALUES ( abc_seq.NEXTVAL, sysdate, 1245009, Gizmo X);1 row created. 版权所有 2008,Oracle。保留所有权利。 8-43 临时表临时表 临时表:临时表: 会话或事务处理结束时会自动清除存储数据会话或事务处理结束时会自动清除存储数据 为每个会话提供专用数据存储为每个会话提供专用数据存储 可供所有会话使用,而会不影响各个会话的专用数据可供所有会话使用,而会不影响各个会话的专用数据 方案方案约束条件约束条件 索引索引 视图视图 序列序列 临时表临时表数据字典数据字典 版权所有 2008,Oracle。保留所有权利

21、。 8-44 临时表:注意事项临时表:注意事项 使用使用 GLOBAL TEMPORARY 子句创建临时表:子句创建临时表: 使用使用 TRUNCATE TABLE 命令删除表内容。命令删除表内容。 在临时表中可创建下列项:在临时表中可创建下列项: 索引索引 视图视图 触发器触发器 CREATE GLOBAL TEMPORARY TABLE employees_tempON COMMIT PRESERVE ROWSAS SELECT * FROM employees;版权所有 2008,Oracle。保留所有权利。 8-45 小结小结 在本课中,您应该已经学会:在本课中,您应该已经学会: 定义方案对象和数据类型定义方案对象和数据类型 创建和修改表创建和修改表 定义约束条件定义约束条件 查看表列和表内容查看表列和表内容 创建索引创建索引 创建视图创建视图 创建序列创建序列 说明临时表的用法说明临时表的用法 版权所有 2008,Oracle。保留所有权利。 8-46 练习练习 8 概览:管理方案对象概览:管理方案对象 本练习包含以下主题:本练习包含以下主题: 创建包含列的表创建包含列的表 创建约束条件:创建约束条件: PRIMARY KEY FOREIGN KEY CHECK 创建索引创建索引

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

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com