Oracle数据库操作:创建、修改与删除表及约束

0 下载量 19 浏览量 更新于2024-09-03 收藏 105KB PDF 举报
"Oracle学习笔记(三),主要涵盖了创建和管理表、修改表、删除表以及添加约束等核心概念。" 在Oracle数据库管理中,理解和掌握这些基本操作是至关重要的。让我们逐一深入探讨: 1. 创建和管理表: - 创建表是数据库设计的基础。语法如下: ```sql CREATE TABLE 表名 (列名 数据类型 [DEFAULT 默认值] [, 列名 数据类型]); ``` - 例如,创建一个包含id和name的员工表: ```sql CREATE TABLE employees (id INT PRIMARY KEY, name VARCHAR(50)); ``` - 通过子查询创建表允许我们基于现有表的数据来创建新表: ```sql CREATE TABLE new_table AS SELECT * FROM old_table; ``` 2. 修改表: - 添加新列:如果需要在已有的表中增加字段,可以使用`ALTER TABLE`语句: ```sql ALTER TABLE table_name ADD (column_name 数据类型 [DEFAULT 默认值]); ``` - 修改列:若需更改列的属性,如类型或默认值,使用`MODIFY`: ```sql ALTER TABLE table_name MODIFY (column_name 新的数据类型 [DEFAULT 新的默认值]); ``` - 删除列:若不再需要某个列,可使用`DROP COLUMN`: ```sql ALTER TABLE table_name DROP COLUMN column_name; ``` 3. 删除表: - `DROP TABLE`命令用于永久性地删除表,一旦执行,无法通过回滚操作恢复: ```sql DROP TABLE table_name; ``` - `RENAME`命令可以更改表的名称: ```sql RENAME table_name TO new_table_name; ``` - 清空表有两种方式:`DELETE`和`TRUNCATE`。`DELETE`会记录操作,可回滚,而`TRUNCATE`不记录,速度快但不可回滚。 4. 添加约束: - 约束用于确保数据的完整性和一致性。例如: - `UNIQUE`约束确保列中的值是唯一的: ```sql ALTER TABLE table_name ADD CONSTRAINT un_key_1 UNIQUE (column1); ``` - `CHECK`约束限制列值的范围: ```sql ALTER TABLE table_name ADD CONSTRAINT ch_1 CHECK (column1 LIKE 'k%'); ``` - `PRIMARY KEY`约束定义主键,确保数据的唯一性和标识性: ```sql ALTER TABLE table_name1 ADD CONSTRAINT pk_1 PRIMARY KEY (column1); ``` - `FOREIGN KEY`约束定义外键,实现表之间的关联: ```sql ALTER TABLE table_name2 ADD CONSTRAINT fk_1 FOREIGN KEY (ref_column) REFERENCES parent_table(parent_column); ``` 以上就是Oracle数据库关于创建和管理表、修改表、删除表以及添加约束的基本操作。理解并熟练应用这些命令,将有助于我们在数据库管理中进行有效且精确的数据操作。在实践中,还需要结合实际需求灵活运用,同时考虑性能和数据安全性。