1. 在oracle中创建数据表之前,有必要先明确以下关系:
数据库实例->数据库->表空间-> 数据表
用户建立表之前应当先确定所属的表空间,否则系统将直接将数据表建立在默认的表空间.
2. 创建准备:
应该明确以下各方面:
表的类型,如堆表、临时表或者索引等。
表中每个字段的
数据类型,如NUMBER、VARCHAR2和DATE等。
表中字段的数据类型
长度大小。
表中每个字段的完整性
约束条件,如PRIMARY KEY、UNIQUE以及NOT NULL约束等。
设计表时,应
设计存放表的表空间,不要随意分散地创建。
注意在表空间中具有相应的系统权限。
最好
不使用Oracle的系统
表空间
SYSTEM
3. 命名
不能以数字开头。
必须在1-30个字符之间。
必须不能与用户定义的其他对象重名。
尽量避免使用Oracle中的保留关键字
4. 命令创建oracle数据表
创建oracle数据表的语法如下:
create table命令用于创建一个oracle数据表;括号内列出了数据表应当包含的列及列的数据类型;tablespace则指定该表的表空间。
创建数据表students。
5. 复杂建表
(1). 创建表时,
TABLESPACE用来指定表空间。
l
例:创建temp_student表,指定到temp表空间。
l
例:创建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;
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);
SQL> CREATE TABLE student (
stuid NUMBER(10),
stuname VARCHAR2(10),
claid NUMBER(4)
)TABLESPACE users LOGGING;