Oracle数据库之使用DDL语句管理表、约束(二十)

在Oracle数据库中,DDL(Data Definition Language)语句用于定义和管理数据库结构,如表、约束、索引等。以下是如何使用DDL语句来管理表和约束的一些示例。

1. 创建表

使用CREATE TABLE语句来创建表。

CREATE TABLE employees (  
    employee_id NUMBER PRIMARY KEY,  
    first_name VARCHAR2(50),  
    last_name VARCHAR2(50),  
    email VARCHAR2(100) UNIQUE NOT NULL,  
    hire_date DATE,  
    salary NUMBER(10, 2) CHECK (salary > 0),  
    department_id NUMBER REFERENCES departments(department_id)  
);

在这个例子中,employees表有多个列,包括一个主键约束(PRIMARY KEY)、一个唯一约束(UNIQUE)、一个非空约束(NOT NULL)、一个检查约束(CHECK)和一个外键约束(REFERENCES)。

2. 修改表

使用ALTER TABLE语句来修改表结构。

添加列
ALTER TABLE employees ADD (address VARCHAR2(100));
修改列
ALTER TABLE employees MODIFY (salary NUMBER(12, 2));
删除列
ALTER TABLE employees DROP COLUMN address;
重命名列

注意:Oracle没有直接的ALTER TABLE ... RENAME COLUMN语句。你需要使用其他方法,如创建一个新列,复制数据,然后删除旧列。

3. 管理约束

添加约束
  • 主键约束

    ALTER TABLE employees ADD CONSTRAINT pk_employees PRIMARY KEY (employee_id);
  • 唯一约束

    ALTER TABLE employees ADD CONSTRAINT uq_employees_email UNIQUE (email);
  • 检查约束

    ALTER TABLE employees ADD CONSTRAINT ck_employees_salary CHECK (salary > 0);
  • 外键约束

    ALTER TABLE employees ADD CONSTRAINT fk_employees_departments FOREIGN KEY (department_id) REFERENCES departments(department_id);

删除约束

要删除约束,你需要知道约束的名称(除非它是自动生成的)。

ALTER TABLE employees DROP CONSTRAINT pk_employees;
如果你不知道约束的名称,但知道它的类型(例如,它是某个表的主键),你可以查询数据字典视图(如USER_CONSTRAINTSALL_CONSTRAINTS)来找到它。

4. 删除表

使用DROP TABLE语句来删除表。

DROP TABLE employees;

注意:删除表会永久删除表及其所有数据,所以在执行此操作之前请务必谨慎。

以上只是DDL语句在Oracle中管理表和约束的基本用法。实际上,Oracle提供了更多的选项和功能来定义和管理数据库结构。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值