📅  最后修改于: 2023-12-03 15:22:41.135000             🧑  作者: Mango
在 PL/SQL 中,可以使用 CREATE TABLE 语句来创建新表。该语句包括定义表的列、数据类型和其他属性,还可以定义约束条件和索引。
下面是 CREATE TABLE 语句的基本语法:
CREATE TABLE table_name
(
column1 datatype [ NULL | NOT NULL ],
column2 datatype [ NULL | NOT NULL ],
...
column_n datatype [ NULL | NOT NULL ]
) [ TABLESPACE tablespace_name ];
其中,table_name 是新表的名称,column1 到 column_n 是表的列,datatype 是每个列的数据类型。NULL 和 NOT NULL 用于指定每个列是否允许为 NULL 值。
可以使用 TABLESPACE 子句指定将新表放置在哪个表空间中。
下面是一个例子,展示如何创建名为 employees 的新表,它有三个列:employee_id、employee_name 和 hire_date。
CREATE TABLE employees
(
employee_id NUMBER(6) NOT NULL,
employee_name VARCHAR2(50) NOT NULL,
hire_date DATE NOT NULL
);
在创建新表时,可以定义约束条件来限制插入、更新或删除行的条件。常见的约束包括 PRIMARY KEY、FOREIGN KEY、NOT NULL 和 CHECK 等约束。
下面是一个例子,展示如何在上述 employees 表中添加 PRIMARY KEY 约束:
CREATE TABLE employees
(
employee_id NUMBER(6) NOT NULL,
employee_name VARCHAR2(50) NOT NULL,
hire_date DATE NOT NULL,
CONSTRAINT pk_emp_id PRIMARY KEY (employee_id)
);
在创建新表时,可以定义索引来提高查询性能。索引可以通过 CREATE INDEX 语句单独创建,也可以在 CREATE TABLE 语句中定义。
例如,下面的 CREATE TABLE 语句创建了名为 employees 的新表,并在 employee_id 列上定义了一个索引:
CREATE TABLE employees
(
employee_id NUMBER(6) NOT NULL,
employee_name VARCHAR2(50) NOT NULL,
hire_date DATE NOT NULL,
CONSTRAINT pk_emp_id PRIMARY KEY (employee_id),
INDEX idx_emp_id (employee_id)
);
生成一个新表的创建是 PL/SQL 中的基础操作之一。使用 CREATE TABLE 语句,您可以定义表的列、数据类型和其他属性,还可以定义约束条件和索引,以确保表的一致性和性能。