oracle 表的创建和管理

1.1oracle常见数据类型

在这里插入图片描述

1.2特殊数据类型ROWID

在这里插入图片描述
在这里插入图片描述

1.4创建表

默认表空间查询(dba的表空间需要dba权限

select username,default_tablespace,temporary_tablespace from dba_users where username = 'SCOTT';

1.5修改表中的列

(1)增加列

ALTER TABLE table_name ADD column_name data_type;

(2)删除列
删除一列

ALTER TABLE table_name DROP COLUMN col_name;

删除多列

ALTER TABLE table_name DROP(col_name,……);

(3)修改列名称

ALTER TABLE table_name RENAME COLUMN col_name to new_col_name;

(4)修改列类型

ALTER TABLE table_name MODIFY col_name new_data_type;

1.7移动表

(1)查看当前的表空间(user开头的数据字典)

select table_name,tablespace_name from user_tables where table_name = 'EMPLOYEE';

(2)移动表

ALTER TABLE employee MOVE TABLESPACE system;

1.8截断表

重置表的存储空间,不会在撤销表空间中记录任何撤销数据---------无法恢复数据

TRUNCATE TABLE table_name;

1.9删除表

DROP TABLE table_name[CASCADE CONSTRAIINTS][PURGE];

CASECADE CONSTRAINTS:指定删除表的同时,删除所有引用这个表的视图、约束、索引和触发器等。

1.10表的复制

(1)全表复制

create table worker as select * from scott.emp;

(2)只复制表结构,不带数据:where 后面 接 假条件

create table worker as select * from scott.emp where 1=2;

2.1表的完整性约束

(1)列级约束(5种)

约束 Value
NOT NULL
PRIMARY KEY
UNIQUE
CHECK
FOREIGN KEY

(1)表级约束(4种) NOT NULL 不行

约束 Value
PRIMARY KEY
UNIQUE
CHECK
FOREIGN KEY

补充说明:查找系统默认取的索引名方法

SELECT * FROM USER_CONS_COLUMNS;

2.2NOT NULL约束

(1)添加not null约束

column_name data_type[CONSTRAINT const_name] NOT NULL;

(2)删除not null约束

ALTER TABLE table_name MODIFY column_name NULL;

2.3PRIMARY KEY约束

(1)添加PRIMARY KEY约束

column_name data_type[CONSTRAINT const_name] PRIMARY KEY;

(2)删除PRIMARY KEYl约束

ALTER TABLE table_name DROP CONSTRAINT const_name;

2.4UNIQUE约束

(1)添加UNIQUE约束

column_name data_type[CONSTRAINT const_name] UNIQUE;

(2)删除UNIQUEl约束

ALTER TABLE table_name DROP UNIQUE(column_name);

2.5CHECK约束

(1)添加CHECK约束

column_name data_type[CONSTRAINT const_name] check(约束条件);

(2)删除CHECK约束

ALTER TABLE table_name DROP CONSTRAINT const_name;

2.6FOREIGN KEY约束

外键约束引用另一个表中的一列或一组列,具有如下特点:
1.被引用的列或列组应该具有主键约束或唯一约束
2.引用列的取值只能为被引用列的值或NULL值
3.可以为一个列或一组列定义FOREIGN KEY 约束

(1)添加FOREIGN KEY约束

column_name data_type[CONSTRAINT const_name] REFERENCES table_name(column_name2);

添加的时候还可以指定级联操作
在这里插入图片描述

(2)删除PRIMARY KEYl约束

ALTER TABLE table_name DROP UNIQUE(column_name);

文中图片来源:天津科技大学人工智能学院软件工程系王怡老师《数据库应用与开发》课程PPT

发布了20 篇原创文章 · 获赞 3 · 访问量 638

猜你喜欢

转载自blog.csdn.net/zmjheart/article/details/105071113