欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 美景 > Oracle数据库之使用DDL语句管理表、约束(二十)

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

2024/10/24 5:19:43 来源:https://blog.csdn.net/pursue_mony/article/details/139642558  浏览:    关键词: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提供了更多的选项和功能来定义和管理数据库结构。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com