对表的操作主要分为三种:
Oracle的数据类型:
表的重命名:
表的删除和回收站
Oracle如果删除表不会真的删除表,而是想Windows一样,进入了回收站,可以恢复和彻底删除
show recyclebin;//查看回收站
flashback table person to before drop;//恢复person表
purge table empnull;//删除回收站中的表
purge recyclebin;//清空回收站
drop table person purge;//彻底删除表,不进入回收站
修改表的结构
约束:
1、检查性约束
create table member(
mid number,
name varchar2(50) not null,
sex varchar2(10) not null,
age number(3),
constraint pk_mid primary key(mid),
constraint ck_sex check(sex in ('男','女')),
constraint ck_age check(age between 0 and 150)
);
2、外键约束:删除主表中的数据就无法删除
create table book(
bid number,
title varchar2(50) not null,
mid number,
constraint pk_bid primary key(bid),
constraint fk_mid foreign key(mid) references member(mid)
);
但是,此时有个缺点,就是删除主表的记录,要先删除字表的记录才可以。此时可以配置级联删除和置空。
如下:级联删除
create table book(
bid number,
title varchar2(50) not null,
mid number,
constraint pk_bid primary key(bid),
constraint fk_mid foreign key(mid) references member(mid) on delete cascade --级联删除
);
设置为null
create table book(
bid number,
title varchar2(50) not null,
mid number,
constraint pk_bid primary key(bid),
constraint fk_mid foreign key(mid) references member(mid) on delete set null--设置为空
);
也可以不设置这些,强制删除。
Drop table member cascade constraint purge;//不关心关系(字表的存在与否),强制删除主表,不推荐使用