oracle11g第5章讲解.ppt

  1. 1、本文档共61页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
*;*;*;数据类型;NUMBER[(p[, s])];TIMESTAMP[(n)] WITH TIME ZONE;BLOB;*;参数说明: schema指示表所属的模式名(缺省:当前用户的帐号); table_name指定要创建的表的名称。表名在当前模式中必须唯一,长度不能超过30字节,以字母开头,可以包含字母、数字下划线、美元符号和“#”; column_name指定表中列的名称(字段名),可以定义多个列,多个列之间用逗号(,)间隔; datatype列的数据类型,Oracle 11g中提供的数据类型如下: DEFAULT指定当前列的默认值; CONSTRAINT为约束命名。定义列级约束时,如果不使用该子句,Oracle系统会自动为约束命名。定义表级约束,必须使用该子句为约束命名; constraint_def指定约束类型。如UNIQUE、NOT NULL等; TABLESPACE指定存储的表空间; ;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;*;也可以对已创建的表添加CHECK约束。 ALTER TABLE table_name ADD [ CONSTRAINT constraint_name ] CHECK (CHECK_CONDITION); ???例5.15】为表person中的sex添加CHECK约束,只允许传递“男”或“女” ALTER TABLE person ADD CHECK(sex IN(‘男’,’女’)); ;*;*;【例5.17】创建图书信息表和图书类别表,并使用外键关联这两个表,如下: CREATE TABLE type( tid NUMBER(4) PRIMARY KEY, tname VARCHAR2(10) NOT NULL ); CREATE TABLE book( bid NUMBER(4) PRIMARY KEY, bname VARCHAR2(20) , tid NUMBER(4), CONSTRAINT book_type FOREIGN KEY (tid) REFERENCES type (tid) ); ;2.指定级联操作类型 在添加FOREIGN KEY约束时,还可以指定级联操作的类型,主要用于确定当删除(ON DELETE)父表中的一条记录时,如何处理子表中的外键字段。有如下3种引用类型。 CASCADE:此关键字用于表示当删除主表中被引用列的数据时,级联删除子表中相应的数据行。 SET NULL:此关键字用于表示当删除主表中被引用列的数据时,将子表中相应引用列的值设置为NULL值。这种情况要求子表中的引用列支持NULL值。 NO ACTION:此关键字用于表示当删除主表中被引用列的数据时,如果子表的引用列中包含该值,则禁止该操作执行。默认为此选项。 【例5.18】在book表的外键中使用SET UNLL关键字 CREATE TABLE book( bid NUMBER(4) PRIMARY KEY, bname VARCHAR2(20) , tid NUMBER(4), CONSTRAINT book_type FOREIGN KEY (tid) REFERENCES type (tid) ON DELETE SET UNLL ); ;*;*;*;*;*;*;*;*;*;*;*;*;5.删除索引 通常在如下情况下需要删除某个索引: 该索引不需要再使用。 该索引很少被使用。索引的使用情况可以通过监视来查看。 该索引中包含较多的存储碎片,需要重建该索引。 删除索引主要分为如下两种情况。 (1) 删除基于约束条件的索引 索引在定义约束条件时由Oracle自动创建的,必须禁用或删除该约束本身。 (2) 删除使用CREATE INDEX语句创建的索引 如果索引是使用创建语句显示创建的,则可以使用DROP INDEX语句删除 DROP INDEX index_name; ;*;*;*;*;*;*;*;*;*;*;语法说明: START WITH后面的数值为序列起始值; INCREMENT BY后面的数值为每次递增数,若指定为负数则表示递减; MINVALUE 后面的数值为序列最小值,若没有最小值则用NOMINVALUE来表示; MAXVALUE后面的数值为序列最大值,若没有最大值则用NOMAXVALUE来表示; CYCLE表示达到最大值或最小值是否循环,若用 NOCYCLE则表示不循环。 CACHE表示是否一次将若干个序列号放入高速缓冲区,因为序列的当前号码值是要保存在数据字典中的,指定高速缓冲区则可减少I/O操作,若不想指定高速缓存则用 NOCACHE 。 ORDER保证序列值唯一且有序, NOORDER只保证唯一,不保证有序。

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档