oracle中如何设置主键?创建主键两种方式你知吗?
数据库教程在Oracle数据库中,主键(Primary Key)的设置是确保数据完整性和一致性的关键步骤。主键用于唯一标识表中的记录,无论是单列主键还是复合主键,都能有效地防止数据重复和缺失。那么,在Oracle中如何设置主键呢?本文将详细介绍两种创建主键的方式。
一、在创建表时定义主键
这是最直接、最常用的方法之一。在创建表的同时,可以直接在列定义中指定主键。以下是具体的SQL语法和示例:
CREATE TABLE table_name (
column1 datatype PRIMARY KEY,
column2 datatype,
...
);
示例:
CREATE TABLE employees (
id NUMBER **PRIMARY KEY**,
name VARCHAR2(50),
age NUMBER,
department_id NUMBER
);
在这个例子中,id
列被定义为employees
表的主键。此外,如果主键由多列组成,可以使用表级约束的语法:
CREATE TABLE table_name (
column1 datatype,
column2 datatype,
...,
**CONSTRAINT constraint_name PRIMARY KEY (column1, column2, ...)**
);
复合主键示例:
CREATE TABLE TF_B_AIR_CONFIG (
TYPE_ID VARCHAR2(20) NOT NULL,
PROVINCE_CODE VARCHAR2(4) NOT NULL,
...,
**CONSTRAINT TF_B_AIR_CONFIG_PK PRIMARY KEY (TYPE_ID, PROVINCE_CODE)**
);
二、在已存在的表中添加主键
对于已经存在的表,如果需要添加主键,可以使用ALTER TABLE
语句。以下是具体的SQL语法和示例:
ALTER TABLE table_name ADD CONSTRAINT constraint_name PRIMARY KEY (column1, column2, ...);
示例:
ALTER TABLE employees ADD CONSTRAINT pk_employees_id PRIMARY KEY (id);
在这个例子中,为已经存在的employees
表的id
列添加了主键约束。同样,如果主键由多列组成,可以指定多个列名。
重点内容总结
- 主键的作用:唯一标识表中的记录,确保数据的完整性和一致性。
- 创建主键的两种方式:
- 在创建表时定义主键:直接在列定义中指定,或使用表级约束语法指定多列主键。
- 在已存在的表中添加主键:使用
ALTER TABLE
语句添加主键约束。
通过掌握这两种方式,可以灵活地在Oracle数据库中设置主键,从而有效地管理数据并确保其唯一性和完整性。