要执行CREATE TABLE脚本,需要满足下面的条件:
CREATE TABLE权限,一个存储区域,指定表名和列名,指定列数据类型和列的大小。
下面是CREATE TABLE的详细语法,
create table table_name (column datatype,column datatype]....)
tablespace tablespace_name [pctfree integer] [pctused integer]
[initrans integer] [maxtrans integer]
storage(initial 200k next 200k pctincrease 0 maxextents 50)
[logging|nologging] [cache|nocache]
因为创建表是一个DDL语句,当该语句执行时将会发生一个自动提交。
=============
CREATE TABLE [schema_name.table_name
(
column_name_1 data_type [column_attributes]
[,column_name_2 data_type [column_attributes]] ...
[,table_level_constraints]
);
tablespace users
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64K
next 1M
minextents 1
maxextents unlimited
);
注意:上面的语法结构中,方括号括起来的表示可选项。
语法各个组成部分的含义如下所示:
★schema_name,指定表所在的方案名称,如果是在当前登录用户下创建表,则不用指定该名称,如果要在其他方案下创建表,用户必须具有该方案下的CREATE TABLE或CREATE ANY TABLE的权限。
★tablename,指定表名称。
★column_name_x,指定表列的名称。
★data_type,指定表列的数据类型。
★column_attributes,指定表列的属性,比如NOT NULL约束和DEFAULT默认值等。
★table_level_constraints,指定表级别的约束定义。
常用的列特性有如下3个。
★NOT NULL:指定列不接受NULL值,如果省略该值,列将允许接受NULL值。
★UNIQUE:指定存储在列中的每一个值都必须唯一。
★DEFAULT default_value:指定列的默认值。




