《数据定义语言》PPT课件.ppt_第1页
《数据定义语言》PPT课件.ppt_第2页
《数据定义语言》PPT课件.ppt_第3页
《数据定义语言》PPT课件.ppt_第4页
《数据定义语言》PPT课件.ppt_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

,第四章 Oracle表:数据定义语言 (Data Definition Language),本章概要,1. 学习数据定义语言的语句,以操作Oracle数据库的数据表结构SQL概述 2. 讨论定义数据表的列时所用的各种数据类型 3. 概括介绍了完整性约束和值约束,同时也概括介绍了在列级别和表级别上如何在CREATE TABLE语句中使用完整性约束和值约束 4. 介绍查看、修改和删除数据表结构,Oracle表:数据定义语言(DDL),模式,Oracle通过模式来组织和维护表、视图、索引等数据库对象。,模式:是一系列逻辑数据结构或对象的集合。一个模式只能够被一个数据库用户所拥有,并且模式的名称与这个用户的名称相同。 Oracle数据库中的每一个用户都拥有一个唯一的模式,他所创建的所有模式对象都保存在自己的模式中。,Oracle表:数据定义语言(DDL),模式对象的类型,在Oracle数据库中的模式对象有:,表 Tables 视图 Views 实体化视图 Materialized views 索引 Indexes 触发器 Triggers 同义词 Synonyms 序列 Sequences 函数、过程和包 Functions, Procedures , Packages 簇或聚集 Clusters 数据库链 Database links 扩展程序库 External procedure libraries,操作符 Operators 维 Dimensions 索引组织表 Index-organized tables 索引类型 Indextypes Java classes, Java resources, Java sources 实体化视图日志 Materialized view logs 对象表 Object tables 对象类型 Object types 对象视图 Object views,Oracle表:数据定义语言(DDL),非模式对象的类型,在Oracle数据库中不是所有的对象都是模式,还有一些数据库对象不属于任何模式,这些对象称为非模式对象,其类型有:,表空间 Tablespaces 用户 Users 角色 Roles 回退段 Rollback segments 目录 Directories,Oracle表:数据定义语言(DDL),表 Tables,Oracle数据库中的表是基本的数据库存储结构。在定义表时为表建立多个字段,数据以行的记录的形式存储在表中。,Oracle表:数据定义语言(DDL),命名规则和约定,数据表是一个对象,它能够存储Oracle数据库中的数据。创建数据表时,必须指定数据表的名称、每一列的名称、每一列的数据类型以及每一列的大小。 表名和列名的长度最多可为30个字符。在命名表和列时,允许使用字母(AZ,az)、数字(09)和一些特殊字符($,_,#)。但是,表名和列名必须以字母打头。 注意1:表名和列名中不允许有空格和连字号()。 注意2:表名在模式(schema)或帐户中必须是唯一的,在一个模式中不应该具有相同名称的另一个对象。,字段的数据类型,CHAR(N), NCHAR(N) VARCHAR2(N), NVARCHAR2(N) NUMBER(P,S) DATE TIMESTAMP RAW(N) BLOB, CLOB, NCLOB, BFILE LONG, LONG RAW ROWID, UROWID,VARRAY TABLE,REF,数据类型,Oracle提供,用户自定义,Scalar,Relationship,Collection,Oracle表:数据定义语言(DDL),Oracle表:数据定义语言(DDL),字段约束:在创建表时,可对表的各个字段设置约束,强制规定表中的数据必须满足的条件。通过使用约束可以保证关系数据库中的三类完整性规则: 实体完整性 参照完整性 用户定义完整性 NULL值:在Oracle的表中,某个字段可以不包含任何值,则称该字段具有“NULL”值 字段默认值它不是一个约束 数据完整性约束:数据完整性约束使用户定义的一系列规则,用于防止错误的或无效的数据被插入或删除。在Oracle中,一共可以为表中的字段定义如下五种类型的约束: PRIMARY KEY (主码,pk)约束实体完整性约束 FOREIGN KEY (外部码,fk)约束引用完整性约束 UNIQUE (唯一码,uk)约束 NOT NULL (非空,ck)约束 CHECK 约束 (ck或cc),我们既可以在创建表时创建约束,也可以在创建完成之后再添加约束。约束的定义有两个级别: 1、列级别:一个列级别的约束只涉及单独一列,它的定义与列的定义同时进行。除外键(FOREIGN KEY)约束和复合主键约束外,其他类型的约束均可以在列级别进行定义。 通用的语法格式是: 列名 数据类型 CONSTRAINT 约束名 约束类型,Oracle表:数据定义语言(DDL),2、表级别:一个表级别的约束涉及一列或多列,它的定义与列的定义是分开进行的。一般来说,所有列的定义都完成之后才定义表级别约束。除非空约束(NOT NULL)外,所有约束可以在表级别进行定义。 通用的语法格式是: CONSTRAINT 约束名 约束类型 (列名,) 约束名的起名规则:_,Oracle表:数据定义语言(DDL),创建Oracle数据表,Oracle表:数据定义语言(DDL),CREATE TABLE ( , , ); 说明: :所要定义的基本表的名字 :组成该表的各个属性(列) :涉及相应属性列的完整性约束条件 :涉及一个或多个属性列的完整性约束条件 注意:每一列都可以有零个或多个在列级别上定义的约束。一般情况下,表级别约束是在所有列级别定义完成之后才声明。,显示数据表信息,Oracle表:数据定义语言(DDL),1.查看用户的表名: SELECT TABLE_NAME FROM USER_TABLES; 功能:显示当前用户创建的所有表名以及属于当前用户的所有其他表。若将改为,将列出当前用户拥有的所有表,以及其他用户授予当前用户权限的那些表。 2.查看表结构:DESCRIBE 表名; 3.查看表的约束信息: SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE FROM USER_CONSTRAINTS WHERE TABLE_NAME=表名;,修改Oracle数据表,Oracle表:数据定义语言(DDL),1、向已存在的数据表中添加一列 ALTER TABLE ADD 完整性约束 ; 2、向已存在的数据表中删除一列 ALTER TABLE DROP COLUMN ; ALTER TABLE SET UNUSED (列名); 3、修改已存在的列 ALTER TABLE MODIFY 列名 新数据类型;,Oracle表:数据定义语言(DDL),4、添加一个约束 ALTER TABLE ADD 列级完整性约束 ; 5、删除一个约束 ALTER TABLE DROP PRIMARY KEY | UNIQUE(列名) CONSTRAINT 约束名 CASCADE; 6、启用/禁用约束 ALTER TABLE ENABLE | DISABLE CONSTRAINT 约束名 ;,Oracle表:数据定义语言(DDL),7、重新命名一列 ALTER TABLE RENAME COLUMN 原列名 TO 新列名 ; 8、重新命名一个约束 ALTER TABLE

温馨提示

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

评论

0/150

提交评论