Less08Schema模式_第1页
Less08Schema模式_第2页
Less08Schema模式_第3页
Less08Schema模式_第4页
Less08Schema模式_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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

2、 序列序列 临时表临时表 数据字典数据字典 版权所有 2008,oracle。保留所有权利。 8-4 版权所有 2008,oracle。保留所有权利。 8-5 访问方案对象访问方案对象 版权所有 2008,oracle。保留所有权利。 8-6 命名数据库对象命名数据库对象 名称长度必须为名称长度必须为 1 至至 30 个字节,但以下情况例外:个字节,但以下情况例外: 数据库名称限制为数据库名称限制为 8 个字节。个字节。 数据库链接名最长可为数据库链接名最长可为 128 个字节。个字节。 不带引号的名称不得为不带引号的名称不得为 oracle 保留字。保留字。 不带引号的名称必须以数据库字符集

3、中的字母字符开头。不带引号的名称必须以数据库字符集中的字母字符开头。 不建议使用带引号的名称。不建议使用带引号的名称。 版权所有 2008,oracle。保留所有权利。 8-7 版权所有 2008,oracle。保留所有权利。 8-8 指定表中的数据类型指定表中的数据类型 公用数据类型:公用数据类型: char(size byte|char):长度为长度为 size 个字节或个字节或字符的固定长度字符数据字符的固定长度字符数据 varchar2(size byte|char):最大长度为最大长度为 size 个字节或字符的可变长度字符串个字节或字符的可变长度字符串 date:有效日期范围为公元

4、前有效日期范围为公元前 4712 年年 1 月月 1 日至公元日至公元 9999 年年 12 月月 31 日日 number(p,s):精度为精度为 p 且小数位数为且小数位数为 s 的数字的数字 版权所有 2008,oracle。保留所有权利。 8-9 版权所有 2008,oracle。保留所有权利。 8-10 版权所有 2008,oracle。保留所有权利。 8-11 创建和修改表创建和修改表 指定表名和方案。 指定表名和方案。 指定列名、数据类型和长度。 指定列名、数据类型和长度。 版权所有 2008,oracle。保留所有权利。 8-12 创建和修改表创建和修改表 create tab

5、le (job_id number(5), job_title varchar2(30),min_salary number(6),max_salary number(6) tablespace users;alter table 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) e

6、mployees employee_id (pk) first_name last_name email phone_number 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_na

7、me countries country_id (pk) country_name region_id (fk) locations 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 违反约束条

8、件违反约束条件 违反约束条件的示例包括:违反约束条件的示例包括: 插入重复的主键值插入重复的主键值 删除引用完整性约束条件中的子行的父行删除引用完整性约束条件中的子行的父行 更新列值后超出了检查约束条件的范围更新列值后超出了检查约束条件的范围 103 102 101 101 x 5 16 49 22 id age 30 版权所有 2008,oracle。保留所有权利。 8-17 约束条件状态约束条件状态 enablenovalidate enablevalidate 现有数据现有数据 新数据新数据 disablenovalidate disablevalidate 无无 dml 版权所有 20

9、08,oracle。保留所有权利。 8-18 版权所有 2008,oracle。保留所有权利。 8-19 约束条件检查约束条件检查 检查约束条件的时机:检查约束条件的时机: 执行语句时(对于非延迟约束条件)执行语句时(对于非延迟约束条件) 发出发出 commit 时(对于延迟约束条件)时(对于延迟约束条件) 案例:案例:dml 语句后接语句后接 commit 已检查非延迟约束条件已检查非延迟约束条件 已发出已发出 commit 已检查延迟约束条件已检查延迟约束条件 commit 已完成已完成 1324版权所有 2008,oracle。保留所有权利。 8-20 版权所有 2008,oracle。

10、保留所有权利。 8-21 使用使用 sql 创建约束条件:示例创建约束条件:示例 cbaalter table countriesadd (unique(country_name) enable novalidate);alter table 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 numb

11、er, hire_date date,salary number,constraint mgr_fk foreign key (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。保

12、留所有权利。 8-26 删除表删除表 删除一个表将会删除:删除一个表将会删除: 数据数据 表结构表结构 数据库触发器数据库触发器 相应的索引相应的索引 关联的对象权限关联的对象权限 drop table 语句的可选子句:语句的可选子句: cascade constraints:相关的引用完整性约束条件相关的引用完整性约束条件 purge:无法闪回无法闪回 drop table hr.employees purge;版权所有 2008,oracle。保留所有权利。 8-27 截断表截断表 截断表时会删除数据并释放已用空间。截断表时会删除数据并释放已用空间。 会截断相应的索引。会截断相应的索引。

13、truncate table hr.employees;版权所有 2008,oracle。保留所有权利。 8-28 索引索引 22 22 索引索引 表表 关键字关键字 行指针行指针 where key = 22 方案方案约束条件约束条件 索引索引 视图视图 序列序列 临时表临时表 数据字典数据字典 版权所有 2008,oracle。保留所有权利。 8-29 索引类型索引类型 有多种类型的索引结构,可以根据需要使用。最常用的两种有多种类型的索引结构,可以根据需要使用。最常用的两种类型是:类型是: b 树索引树索引 默认的索引类型;采用平衡树的形式默认的索引类型;采用平衡树的形式 位图索引:位图索

14、引: 每个不同的索引值都有一个位图每个不同的索引值都有一个位图 每一位代表一行,该行可能包含,也可能不包含索引值。每一位代表一行,该行可能包含,也可能不包含索引值。 最适合于低基数列最适合于低基数列 版权所有 2008,oracle。保留所有权利。 8-30 b 树索引树索引 索引条目头索引条目头 键列长度键列长度 键列值键列值 rowid 根根 分支分支 叶叶 索引条目索引条目 版权所有 2008,oracle。保留所有权利。 8-31 版权所有 2008,oracle。保留所有权利。 8-32 位图索引位图索引 关键字关键字 开始开始 rowid 结束结束 rowid 位图位图 表表 索引

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

16、版权所有 2008,oracle。保留所有权利。 8-35 版权所有 2008,oracle。保留所有权利。 8-36 创建索引创建索引 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 loc

17、ations l, countries cwhere l.country_id = c.country_id and c.country_id in (au,br);版权所有 2008,oracle。保留所有权利。 8-38 创建视图创建视图 版权所有 2008,oracle。保留所有权利。 8-39 序列序列 序列是按照某种模式自动生成整数的一种机制。序列是按照某种模式自动生成整数的一种机制。 序列具有名称,指明了请求下一个值时引用序列的方式。序列具有名称,指明了请求下一个值时引用序列的方式。 序列不与任何特定的表或列相关联。序列不与任何特定的表或列相关联。 增长方式可为升序,也可为降序。增

18、长方式可为升序,也可为降序。 编号之间的间隔可为任意大小。编号之间的间隔可为任意大小。 达到上限或下限时,序列可以循环使用。达到上限或下限时,序列可以循环使用。 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 orders values ( abc_seq.nextval, sysdate, 1245009, gizmo x);1 row created. 版权所有 2008,oracle。保留所有权利。 8-43 临时表临时表 临时表:临时表: 会话或事务处理结束时会自动清除存储数据会话或事务处理结束时会自动清除存储数据 为每个会话提供专用数据存储为每个会话提供专用数据存储 可供所有会话使用,而会不影响各个会话的专用数据可供所有会话使用,而会不

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论