Oracle中创建一张新表(oracle中创建一张表)

在Oracle数据库中,创建新表是常见的操作之一。新表的建立可以依据需求,定义表的列和属性,为业务数据提供基础支持。本文主要介绍在Oracle中如何创建一张新表。

1. 创建新表的语法

在Oracle数据库中,用CREATE TABLE语句来创建新表。CREATE TABLE的语法如下:

CREATE TABLE table_name (

column1 datatype [ NULL | NOT NULL ],

column2 datatype [ NULL | NOT NULL ],

columnN datatype [ NULL | NOT NULL ]

);

其中,table_name为新表的名称;columnN为表的列名,datatype定义了相应列的数据类型。NULL和NOT NULL表示该列能否为NULL。例如,下面是创建一个新表Employee的语句:

CREATE TABLE Employee (

employee_id INT NOT NULL,

first_name VARCHAR2(20),

last_name VARCHAR2(20),

eml VARCHAR2(50),

hire_date DATE,

salary NUMBER(8,2),

manager_id INT

);

以上语句创建了一张名为Employee的新表,表包含七个列:employee_id、first_name、last_name、eml、hire_date、salary和manager_id。

2. 创建表时定义主键

在创建新表时,可以定义主键。主键是唯一标识一个表中某一列的值的列或列的集合。主键列无法有重复的值或NULL值。在Oracle数据库中,使用PRIMARY KEY关键字定义主键。例如,下面是一个创建有主键的新表的例子:

CREATE TABLE department (

department_id INT PRIMARY KEY,

department_name VARCHAR2(50) NOT NULL,

manager_id INT

);

以上语句创建了名为department的新表,包含三个列:department_id、department_name和manager_id。其中,department_id列被定义为主键,该列的值不能重复。

3. 创建表时定义外键

在Oracle数据库中,外键是用于建立两个表之间关联的标识。外键用于定义两个表之间的联系,确保数据的完整性和一致性。在Oracle数据库中,可以在CREATE TABLE语句中使用FOREIGN KEY关键字来定义外键。例如,下面是一个创建有外键的新表的例子:

CREATE TABLE emp_dept (

employee_id INT NOT NULL PRIMARY KEY,

department_id INT NOT NULL,

FOREIGN KEY (department_id) REFERENCES department(department_id)

);

以上语句创建了一个名为emp_dept的新表,其中employee_id被定义为主键,department_id被定义为外键,并参照了department表的主键department_id。这样就实现了emp_dept和department表之间的关联。

4. 创建表时添加约束

在Oracle数据库中,可以使用约束来保证表的数据完整性和一致性。约束可以设置在表级别或列级别。在创建新表时,可以使用CONSTRNT关键字定义约束。例如,下面是一个创建有约束的新表的例子:

CREATE TABLE course (

course_id INT PRIMARY KEY,

course_name VARCHAR2(50) NOT NULL,

course_type VARCHAR2(10) CONSTRNT ct_check CHECK (course_type IN (‘preparatory’, ‘basic’, ‘advanced’)),

instructor VARCHAR2(50),

quota INT CONSTRNT quota_check CHECK (quota BETWEEN 1 AND 100),

start_date DATE NOT NULL,

end_date DATE NOT NULL CONSTRNT end_date_check CHECK (end_date>=start_date),

department_id INT,

CONSTRNT fk_dept FOREIGN KEY (department_id) REFERENCES department(department_id)

);

以上语句创建了一个名为course的新表,其中course_id被定义为主键,course_type被定义为CHECK约束,quota被定义为BETWEEN约束,end_date被定义为CHECK约束,department_id被定义为外键,并参照了department表的主键department_id。

总结:

在Oracle数据库中创建新表可以使用CREATE TABLE语句,可以定义表的列和属性、主键、外键和约束。上述示例资料,可用于参照查询,了解Oracle数据库表的创建细节。


数据运维技术 » Oracle中创建一张新表(oracle中创建一张表)