您的位置:首页 > 其它

oracel初识9.24 DDL 创建表

2014-01-26 15:36 162 查看
Lesson 13

    DDL

   
数据库对象(Database Objects)

    user_objects
: 数据字典,用于描述数据库对象信息的;

    Table

     
命名规则:a.必须以字母开头;b.长度1-30个字符;c.只能是A-Z,a-z,0-9,_,$,和#;

              
d.在一个用户名字不能相同;e.不能是oracle的关键字;

     
创建表: CREAT TABLE [shema.]table (column datatype [DEFAULT
expr][....]]);(DEFAULT为默认,即开业采用表默认的列列表,可参照上次课建表的例子)

     
查询另一个用户的表的信息,用其用户名.表名(但是必须有访问的权限,否则不能访问)。

         
如:select * from hr.departments;

            
grant select on hr.departments to
scott;(把访问hr的dipartments的权限赋给scott用户,这样就scott可以访问hr的departments表)。

    View

   
Sequence(序列,一般创建主键时用)

    Index

  数据类型

   
VARCHAR2(size)比char类型定义的更节省内存空间;

   
CHAR(size)

   
NUMBER(p,s)

    DATE

   
CLOB(存放字符型数据,最大4GB)

   
BLOB(存放二进制数据,最大4GB)

    ROWID

  约束条件

    NOT
NULL:非空约束(只能加在列一级) 加主键约束后会默认再添加一个非空约束,即主键不能为空;

   
UNIQUE:唯一约束

    PRIMARY
KEY:主键约束 主键的列在表中(默认唯一标,不能为空);

    FOREIGN
KEY:外键约束
A表的主键不必在B表中的外键全部呈现,但是B表的外键的值必须在A表主键中找到,否则不能在外键中进行插入等添加的语句;见图一:



     
FOREIGN KEY 中的关键字:

         
FOREIGN KEY 在子表表级别中定义指定列为外键;

         
REFERENGES  指定父表中的指定列为该子表外键的主键;

         
ON DELETE CASCADE
(用在指定外键中)当父表中某行删除时,删除子表中对应行,而不必考虑因子表中外键引用主表主键的值而引起的父表无法删除;

         
ON DELETE SET NULL 更改外键值为null;

    CHECK
详细见图二:




    

   
约束的定义细节:图三



;

       
具体语法:图四:



       
例:图五:



(其中emp_emp_id_pk是自己定义的约束的名字,可以省略,系统会给一个默认的名字SYS_Cn见图一,primarykey(主键约束)是约束的类型)

   alter table(具体查API文档)

       
alter table read only 把表改为只读

   drop table 删除表

   flashback table exrp to drop
before;(从回收站恢复删除的表)

   purge table exrp
;从回收站清空表exrp

   purge recyclebin ;清空回收站
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: