Oracle表基础
1.表创建
2.约束
3.修改表
4.表的其他操作
常用的列的类型
a.字符:CHAR VARCHAR VARCHAR2(oracle特有)
b.数值:NUMERIC NUMER(oracle特有)
c.大对象:BLOB(二进制) CLOB(字符)
1.表创建
第一种直接创建
CREATE TABLE dept(
depno NUMBER(2,0),
dname VARCHAR(32),
LOC VARCHAR(64) 'abc'
);
第二种通过子查询,复制表
CREATE TABLE dept1
AS
SELECT * FROM dept;
只复制表结构:
CREATE TABLE DEPT2
AS
SELECT * FROM dept
WHERE 1=0
2.约束
a.数据库在表定义上实施的用于维护数据完整性的一些规则;
b.按定义位置分:表级别约束、列级别约束;
c.按特征分:主键、外键、非空、唯一、检查五种约束
列级别约束:
CREATE TABLE DEPT2(
deptno number(2) dept2_deptno_pk primary key,
dname varchar2(12) unique,
loc varchar(16)
)
表级别约束:
CREATE TABLE EMP2(
empno number(2),
ename varchar2(12) not null,
jobs varchar2(12),
sal number(4) check(sal>1200),
deptno number(12),
constraint emp2_empo_pk primary key(empno),
constraint emp2_empo_fk foreign key(deptno) references dpt2(deptno)
);
列的操作:
删除列
alter table emp2
drop(列名1,列名2,...);
增加列
alter table emp2
add borndate date default sysdate;
修改列
alter tabe empw
modify job varchar2(24);
约束的添加和删除:
select constraint_name,contraint_type,table_name from user_constraints
表级别
添加约束
altertable emp2
add constraint emp2_empo_pk primary key(empno)
删除约束
alter table emp2
drop constraint emp2_empo_pk;
列级别省略
3.其他操作
主要包括截断、删除和修改读写状态
a.截断表:删除表内容,保留表结构;DDL
truncate table emp2;
b.删除表;DDL
drop table emp2;
c.修改读写状态;
(1)启用表的只读状态,便于备份和导出表;
alter table emp2 read only;
(2)启用表的读写状态便于表的正常使用;
alter table emp2 read write;

浙公网安备 33010602011771号