6-2 oracle创建数据表

时间:2022-08-21 08:48:56

1. 在oracle中创建数据表之前,有必要先明确以下关系:

 数据库实例->数据库->表空间-> 数据表

 用户建立表之前应当先确定所属的表空间,否则系统将直接将数据表建立在默认的表空间.


2. 创建准备:

   应该明确以下各方面:

    表的类型,如堆表、临时表或者索引等。

   表中每个字段的 数据类型,如NUMBER、VARCHAR2和DATE等。
   表中字段的数据类型 长度大小
   表中每个字段的完整性 约束条件,如PRIMARY KEY、UNIQUE以及NOT NULL约束等。
   设计表时,应 设计存放表的表空间,不要随意分散地创建。
   注意在表空间中具有相应的系统权限。
   最好 不使用Oracle的系统 表空间 SYSTEM

3. 命名
不能以数字开头。
必须在1-30个字符之间。
必须不能与用户定义的其他对象重名。
尽量避免使用Oracle中的保留关键字

4. 命令创建oracle数据表

创建oracle数据表的语法如下:

6-2 oracle创建数据表

create table命令用于创建一个oracle数据表;括号内列出了数据表应当包含的列及列的数据类型;tablespace则指定该表的表空间。

创建数据表students。

6-2 oracle创建数据表

5. 复杂建表 
 (1). 创建表时, TABLESPACE用来指定表空间
l 例:创建temp_student表,指定到temp表空间。

例:创建temp_student表,指定到temp表空间。
SQL> CREATE TABLE temp_student (
stu_id NUMBER(5) NOT NULL,
name VARCHAR2(20),
age NUMBER(3),
phone VARCHAR2(20),
address VARCHAR2(50),
CONSTRAINT stu_id PRIMARY KEY(stu_id)
)TABLESPACE temp;

(2) 创建表时,用 STORAGE子句对存储空间进行设置。
     STORAGE ( INITIAL nk|mNEXT nk|m PCTINCREASE n)
    INITIAL:指定表中数据分配的第一个盘区的大小,以KB或者MB为单位,默认5个Oracle数据块大小。
     NEXT  PCTINCREASE 为数据字典管理模式。
创建student表,通过STORAGE指定初始存储空间128KB。
SQL> CREATE TABLE student (
stuid NUMBER(10),
stuname VARCHAR2(10),
stusex CHAR(2),
stubirth DATE,
claid NUMBER(4)
)TABLESPACE users STORAGE (INITIAL 128K);

(3) 指定重做日志 用 LOGGING子句
SQL> CREATE TABLE student (
stuid NUMBER(10),
stuname VARCHAR2(10),
claid NUMBER(4)
)TABLESPACE users LOGGING;