Oracle第4章数据表操作.ppt_第1页
Oracle第4章数据表操作.ppt_第2页
Oracle第4章数据表操作.ppt_第3页
Oracle第4章数据表操作.ppt_第4页
Oracle第4章数据表操作.ppt_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

1、第4章 数据表操作,主编:刘志成,本章学习导航,本章学习导航,本章学习要点,(1)使用OEM创建、修改、查看和删除数据表。 (2)使用SQL Developer创建、修改、查看和删除数据表。 (3)使用PL/SQL创建、修改、查看和删除数据表。 (4)添加、删除和修改数据表中的记录。 (5)数据完整性概述。 (6)非空、默认、唯一、检查、主键和外键约束操作。 (7)管理序列和同义词。 建议课时:8课时,4.1 数据库概述,数据表基础,数据表(Table)是数据在Oracle数据库中的逻辑存储单元,按指定关系模式将数据存储在对应的数据表中。,4.1 数据库概述,Oracle基本数据类型,数据类型

2、的作用在于指明存储数值时需要占据的内存空间大小和进行运算的依据。 Oracle的数据类型分为标量(Scalar)类型、复合(Composite)类型、引用(Reference)类型和LOB(Large Object)类型4种类型 。,4.1 数据库概述,Oracle基本数据类型,(1)CHAR(n) 该数据类型用于定义固定长度的字符串,其中n用于指定字符串的最大长度,n必须是正整数且不超过32767。 (2)VARCHAR2(n) 该数据类型用于定义可变长度的字符串,其中n用于指定字符串的最大长度,n必须是正整数且不超过32767。 (3)NUMBER(precision,scale) 该数据

3、类型用于定义固定长度的整数和浮点数,其中precision表示精度,用于指定数字的总位数;scale表示标度,用于指定小数点后的数字位数,默认值为0,即没有小数位数。,4.1 数据库概述,Oracle基本数据类型,(4)DATE 该数据类型用于定义日期时间类型的数据,其数据长度为固定7个字节,分别描述年、月、日、时、分、秒。 (5)TIMESTAMP 该数据类型也用于定义日期时间数据,但与DATE仅显示日期不同,TIMESTAMP类型数据还可以显示时间和上下午标记,如“11-9月-2007 11:09:32.213 AM”。 (6)BOOLEAN 该数据类型用于定义布尔型(逻辑型)变量,其值只

4、能为TRUE(真)、FALSE(假)或NULL(空)。需要注意的是,该数据类型是PL/SQL数据类型,不能应用于表列。,4.1 数据库概述,方案的概念,方案,就是一系列数据库对象的集合,是数据库中存储数据的一个逻辑表示或描述。 Oracle 11g数据库中并不是所有的数据库对象都是方案对象,方案对象有表、索引、触发器、数据库链接、PL/SQL包、序列、同义词、视图、存储过程、存储函数等,非方案对象有表空间、用户、角色、概要文件等。 在Oracle 11g数据库中,每个用户都拥有自己的方案,创建了一个用户,就创建了一个同名的方案,方案与数据库用户是对应的。 用户在数据库中创建了一个方案对象后,这

5、个方案对象默认地属于这个用户的方案。,课堂案例1使用OEM创建GOODS表,掌握Oracle中应用OEM创建数据表的方法和基本步骤,案例学习目标,进入OEM表编辑页面、列的数据类型的选择、OEM创建表的基本步骤 。,案例知识要点,课堂案例1使用OEM创建GOODS表,案例完成步骤,添加标题文字,(1)启动OEM后,依次选择“方案”、“表”。进入“表”页面 。 (2)单击“创建”按钮,进入“创建表:表组织”页面,选择默认的“标准(按堆组织)”方式。 (3)单击“继续”按钮,进入“表一般信息”页面。指写表名为GOODS,方案为SCOTT,表空间为TS_EBUY。并依次填写GOODS表中的每一列的名

6、称和数据类型 。 (4)单击“确定”按钮,完成新表的创建。并返回到对应的方案页面 。,添加标题文字,教师演示讲解,课堂案例2使用OEM修改GOODS表,掌握Oracle中应用OEM修改数据表的方法 。,案例学习目标,进入表的编辑页面、列数据类型的修改、列的宽度的修改、添加新列、删除已有列 。,案例知识要点,课堂案例2使用OEM修改GOODS表,案例完成步骤,添加标题文字,(1)启动OEM后,依次选择“方案”、“表”,进入“表”页面,指定要操作的方案(如SCOTT)后,单击“确定”按钮,即显示出指定方案中包含的表 。 (2)选择指定的表(如GOODS),单击“编辑”按钮,进入表的编辑页面。在该页

7、面中可以完成对表名、列名、列类型等的修改 (3)修改完成后,单击“应用”按钮,保存修改结果 。,添加标题文字,教师演示讲解,4.2.3 使用OEM查看和删除表,OEM查看表,添加标题文字,(1)启动OEM后,进入指定方案(如SCOTT)的“表”页面。 (2)选择要查看的表后,单击“查看”按钮,即可查看到表的一般信息。,添加标题文字,教师演示讲解,4.2.3 使用OEM查看和删除表,OEM删除表,添加标题文字,(1)在指定方案的“表”页面,选择要删除的表(如:GOODS),单击“使用选项删除”按钮,进入“确认”页面。 (2)单击“是”按钮,根据指定的选项完成对指定表的删除操作。,添加标题文字,教

8、师演示讲解,课堂案例3使用SQL Developer创建Users表,掌握Oracle中应用SQL Developer创建数据表的一般步骤和方法 。,案例学习目标,SQL Developer的启动、SQL Developer的登录、SQL Developer中数据类型的选择、SQL Developer中创建表的步骤、SQL Developer中数据表列的操作方法 。,案例知识要点,课堂案例3使用SQL Developer创建Users表,案例完成步骤,添加标题文字,(1)启动SQL Developer并建立和Oracle 11g数据库的连接,以指定的方案(如方案名:SCOTT,密码:12345

9、6)登录SQL Developer后。在SQL Developer的左边树型结构中,依次选择“eBuy”、“Tables”,右键单击“Tables”项,从快捷菜单中选择“New Table”,添加标题文字,教师演示讲解,课堂案例3使用SQL Developer创建Users表,案例完成步骤,添加标题文字,(2)打开“Create Table”对话框,指定新建数据表的名称(如Users);选择默认的用户方案(SCOTT)。 (3)添加数据表列。首先单击“Add Column”按钮,再设置列的名称、数据类型、数据类型的长度、是否允许列值非空和该列是否为主键后,将为新表增加一个数据列。按照这种方法,

10、依次为Users数据表添加数据列,添加标题文字,教师演示讲解,课堂案例3使用SQL Developer创建Users表,案例完成步骤,添加标题文字,(4)指定列数据类型。在SQL Developer创建表的普通状态下,数据列只能选择VARCHAR2、CLOB、INTEGER、NUMBERt和DATE五种数据类型,如果要使用更多的数据类型,请选中Advanced复选框 。 (5)单击“确定”按钮,完成数据表的创建,在SQL Developer中的Tables项下将新增Users项。 (6)在为数据表添加数据列之后,选择“SQL”选项卡,用户可以查看创建数据表的DDL脚本 。,添加标题文字,教师演

11、示讲解,4.3.2 使用SQL Developer修改表,修改表,添加标题文字,在SQL Developer左边栏的Tables项中右击需要修改的数据表,从快捷菜单中选择“Edit”,将打开“Edit Table”对话框,用户可以完成对数据表的修改操作。修改完成后单击“确定”按钮,保存修改结果 。,添加标题文字,教师演示讲解,4.3.3 使用SQL Developer查看和删除表,查看表,添加标题文字,在SQL Developer的Tables选项中单击需要查看的表,在右边栏内将出现该表的详细情况,包括该表所属的列、数据、约束、授权和主键等各种信息 。,添加标题文字,教师演示讲解,4.3.3

12、使用SQL Developer查看和删除表,删除表,添加标题文字,(1)删除数据表时,首先从Tables项中右击需要删除的数据表,然后从快捷菜单中依次选择“Table”和“Drop” 。 (2)在打开的的删除对话框中,单击“应用”按钮 。,添加标题文字,教师演示讲解,课堂案例4使用PL/SQL管理表,掌握Oracle中应用PL/SQL语句创建数据表、修改数据表、删除数据表的方法。,案例学习目标,CREATE TABLE语句、ALTER TABLE语句、DROP TABLE语句、PL/SQL的执行。,案例知识要点,课堂案例4使用PL/SQL管理表,案例完成步骤-创建数据表,添加标题文字,教师演示

13、讲解,(1)编写SQL脚本 (2)运行创建CUSTOMER表的脚本 输入到SQL Developer的“Enter SQL Statement”区域,单击图标或按F5键运行脚本,执行PL/SQL语句,课堂案例4使用PL/SQL管理表,案例完成步骤-修改数据表,添加标题文字,教师演示讲解,1添加列 【例4-2】考虑到需要了解商品的生产厂商的信息,要在SCOTT用户方案的GOODS 表中添加一个长度为 20 个字符,名称为g_Producer,类型为varchar的新的一列。 ALTER TABLE SCOTT.GOODS ADD g_Producer varchar(20),课堂案例4使用PL/

14、SQL管理表,案例完成步骤-修改数据表,添加标题文字,教师演示讲解,2修改列 【例4-3】考虑到出生日期的实际长度和数据操作的方便性,要将SCOTT用户方案中的GOODS表中的g_ProduceDate数据类型改为char型,且宽度为10。 ALTER TABLE SCOTT.GOODS MODIFY g_ProduceDate char(10),课堂案例4使用PL/SQL管理表,案例完成步骤-修改数据表,添加标题文字,教师演示讲解,3删除列 使用ALTER TABLE 语句删除列时,可以使用 DROP COLUMN关键字。 【例4-4】如果不考虑商品的生产厂商信息,要在SCOTT用户方案中的

15、GOODS表中删除已有列g_Producer。 ALTER TABLE SCOTT.GOODS DROP COLUMN g_Producer 使用ALTER TABLE SCOTT. GOODS CASCADE;可以删除与指定列相关联的约束,课堂案例4使用PL/SQL管理表,案例完成步骤-查看删除表,添加标题文字,教师演示讲解,1查看表 【例4-5】使用DESCRIBE命令查看用户方案SCOTT下的商品表USERS。 DESCRIBE SCOTT.Users; 2删除表 使用PL/SQL删除表的基本语法格式为: DROP TABLE 用户方案.; 【例4-6】使用DROP TABLE命令删除用

16、户方案为SCOTT下的商品表GOODS。 DROP TABLE SCOTT. GOODS; 【例4-7】使用DROP TABLE命令删除用户方案SCOTT中的商品表GOODS,并删除商品表的所有外键约束。 DROP TABLE SCOTT. GOODS CASCADE CONSTRAINS;,课堂案例5使用SQL Developer操作数据记录,掌握在SQL Developer中操作数据记录的方式 。,案例学习目标,在SQL Developer中添加数据、在SQL Developer中修改数据、在SQL Developer中删除数据 。,案例知识要点,课堂案例5使用SQL Developer操

17、作数据记录,案例完成步骤,添加标题文字,教师演示讲解,课堂案例6使用PL/SQL操作数据记录,学习使用PL/SQL语句插入记录、修改记录和删除记录的语句 。,案例学习目标,INSERT语句插入记录、UPDATE语句修改记录、DELETE语句删除记录 。,案例知识要点,课堂案例6使用PL/SQL操作数据记录,案例完成步骤,添加标题文字,教师演示讲解,1插入数据记录 在PL/SQL中,使用INSERT INTO语句实现在表中插入数据记录的操作,其语法格式为: INSERT INTO 用户方案.(, ) VALUES(, ); (1)插入所有列 (2)插入指定列,课堂案例6使用PL/SQL操作数据记

18、录,案例完成步骤,添加标题文字,教师演示讲解,2更新数据记录 在PL/SQL中,使用UPDATE语句实现更新表中数据记录的操作,其语法格式为: UPDATE 用户方案. SET = , = WHERE 条件表达式 ; (1)修改单条记录 (2)修改多条记录,课堂案例6使用PL/SQL操作数据记录,案例完成步骤,添加标题文字,教师演示讲解,3删除数据记录 在PL/SQL中,使用DELETE FROM语句实现删除表中数据记录的操作,其语法格式为: DELETE FROM 用户方案. WHERE 条件表达式; (1)删除指定记录 (2)删除所有记录,4.6.1 数据完整性概述,概述,添加标题文字,数

19、据完整性是指数据的精确性和可靠性。它是为防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息而提出的。数据完整性主要分为4类:域完整性、实体完整性、引用完整性和用户定义完整性。 1域完整性 域完整性是指数据库表中的列必须满足某种特定的数据类型或约束,其中约束又包括取值范围精度等规定。表中的CHECK、FOREIGN KEY 约束和DEFAULT、NOT NULL定义都属于域完整性的范畴。 2实体完整性 实体完整性规定表的每一行在表中是唯一的。实体表中定义的UNIQUE、PRIMARY KEY 和IDENTITY 约束就是实体完整性的体现。,4.6.1 数据完整性

20、概述,概述,添加标题文字,3引用完整性 引用完整性是指两个表的主关键字和外关键字的数据应对应一致。它确保了有主关键字的表中对应其他表的外关键字的行存在,即保证了表之间的数据的一致性,防止了数据丢失或无意义的数据在数据库中扩散。 引用完整性作用表现在如下几个方面: 禁止在从表中插入包含主表中不存在的关键字的数据行; 禁止会导致从表中的相应值孤立的主表中的外关键字值改变; 禁止删除在从表中有对应记录的主表记录。 4用户定义完整性 用户定义完整性指的是由用户指定的一组规则,它不属于实体完整性、域完整性或引用完整性。,课堂案例7数据完整性与约束,学习在Oracle中使用OEM和PL/SQL语句实现各类

21、约束以实现数据完整性的方法和操作步骤 。,案例学习目标,管理NOT NULL约束、管理DEFAULT约束、管理UNIQUE约束、管理CHECK约束、管理PRIMARY KEY约束、管理FOREIGN KEY约束 。,案例知识要点,课堂案例7数据完整性与约束,案例完成步骤-非空约束,添加标题文字,教师演示讲解,非空约束说明列值不允许为空(NULL),当插入或修改数据时,设置了非空约束的列的值不允许为空,它必须存在具体的值,如商品编号、商品名称必须为非空。如果没有为列创建非空约束,则该列默认为允许空值。非空约束可以通过OEM或PL/SQL创建。,课堂案例7数据完整性与约束,案例完成步骤-默认约束,

22、添加标题文字,教师演示讲解,默认约束是指表中添加新行时给表中某一列指定的默认值。使用默认约束一是可以避免不允许为空值的数据错误,二是可以加快用户的输入速度。默认约束可以通过OEM或PL/SQL创建。 如果创建了称为“默认值”的对象。当绑定到列或用户定义数据类型时,如果插入时没有明确提供值,默认值便指定一个值,并将其插入到对象所绑定的列中 。,课堂案例7数据完整性与约束,案例完成步骤-默认约束,添加标题文字,教师演示讲解,默认约束是指表中添加新行时给表中某一列指定的默认值。使用默认约束一是可以避免不允许为空值的数据错误,二是可以加快用户的输入速度。默认约束可以通过OEM或PL/SQL创建。,c_

23、Gender char(2) DEFAULT 女,- 性别,课堂案例7数据完整性与约束,案例完成步骤-唯一约束,添加标题文字,教师演示讲解,唯一约束通过确保在列中不输入重复值保证一列或多列的实体完整性,每个唯一约束要创建一个唯一索引。对于实施唯一约束的列,不允许有任意两行具有相同的索引值。如商品编号是唯一的,这样才能唯一地确定一种商品。与主键约束不同的是,Oracle允许为一个表创建多个唯一约束。唯一约束可以通过OEM或PL/SQL创建 。,CONSTRAINT 约束名 UNIQUE (列);,课堂案例7数据完整性与约束,案例完成步骤-检查约束,添加标题文字,教师演示讲解,检查约束限制输入到一

24、列或多列中的可能值,从而保证Oracle数据库中数据的域完整性。检查约束实际上定义了一种输入验证规则,表示一个列的输入内容必须符合该列的检查约束条件,如果输入内容不符合规则,则数据输入无效。如商品数量必须定义在0, 100之间,输入的任何商品的数量都必须符合此规则,否则这样的数据记录不会被插入到商品表中。,课堂案例7数据完整性与约束,案例完成步骤-主键约束,添加标题文字,教师演示讲解,主键约束主要用于实现实体完整性,对于指定了主键约束的列,要求表中的每一行有一个唯一的标识符,这个标识符就是主键。主键约束实际上是通过创建唯一索引来保证指定列的实体完整性的。主键约束可以应用于表中一列或多列(复合主

25、键) 。,课堂案例7数据完整性与约束,案例完成步骤-外键约束,添加标题文字,教师演示讲解,外键约束为表中一列或多列数据提供引用完整性,它限制插入到表中被约束列的值必须在被引用表中已经存在。实施外键约束时,要求在被引用表中定义了主键约束或唯一约束。被引用表被称为主表,主表中的主键称为引用完整性中的主键,必须引用主表进行引用完整性约束的列称为外键,外键对应的表称为外表或从表 。,课堂案例7数据完整性与约束,案例完成步骤-外键约束,添加标题文字,教师演示讲解,课堂案例8管理序列和同义词,学习在OEM中管理序列和同义词、使用PL/SQL管理序列和同义词的一般步骤和基本方法 。,案例学习目标,OEM创建

26、序列、OEM中修改序列、OEM删除序列、PL/SQL创建序列、PL/SQL修改序列、PL/SQL删除序列、OEM创建同义词、OEM修改同义词、OEM删除同义词、PL/SQL创建同义词、PL/SQL修改同义词、PL/SQL删除同义词 。,案例知识要点,课堂案例8管理序列和同义词,案例完成步骤-使用OEM管理序列,添加标题文字,教师演示讲解,(1)进入OEM后,依次选择“方案”、“序列”,进入“序列”页面,单击“创建”按钮,进入“创建序列”页面,课堂案例8管理序列和同义词,案例完成步骤-使用PL/SQL管理序列,添加标题文字,教师演示讲解,(1)创建日志表LOG,(2)为日志编号列lg_ID创建序列,实现从1001开始自动增长,增量幅度为1,(3)使用序列。,课堂案例8管理序列和同义词,同义词概述,添加标题文字,教师演示讲解,同义词(Synonym)是指向数据库中其他对象的数据库对象,是表、视图、序列、过程、函数、包、快照或其他同义词的别名。同义词通常用于对最终用户隐藏特定细节,如对象的所有权、分布式对象的位置等。 同义词有两种形式:公共的和私有的。公共同义词为特定用户组PUBLIC所拥有,它对于数据库中的每个用户都可用;私有同义词在创建它的用

温馨提示

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

评论

0/150

提交评论