Oracle 对表的创建与管理

本博客只讲到使用SQL进行表的创建、修改和删除等

表的创建与管理

一 对于表空间的编辑

1 创建表空间

create tablespace DATA01

datafile '/oracle/oradata/db/DATA01.dbf' SIZE 500M

UNIFORM SIZE 128k;//指定尺寸为128k,如不指定,默认为64k

2 修改表空间

alter tablespace my online;//使表空间联机

alter tablespace my read only;//使表空间只读

alter tablespace my read write;//使表空间可读写

3 删除表空间

drop tablespace DATA01 including contents and datafiles;

二 对表的编辑

1 创建表

create table student

(studentID char(6),

name varchar2(8),

sex char(2) default '男');//设置字段sex的默认值为  ‘男’

DESC student;//显示student表结构

2 修改表

alter table student

rename to new_student//修改表名

add (sdept varchar2(10),age int,birthday DATE)//向表中添加字段sdept,age,birthday

drop column (sex,age)//删除列sex,age

rename column sdept to new_sdept//修改sdept的字段名为new_sdept

3 删除表

drop table table_name;

4 查看表

select * from tab/dba_tables/dba_objects/cat;//查看表

select table_name from user_tables;//当前用户的表

select table_name from all_tables;//所有用户的表

select table_name from dba_tables;//包括系统表

5 向表中插入数据

//插入一条完整记录

insert into student(studentID,name,sex,birthday)

values('1102','张三','男','11-5月-1990');

insert into student

values('1102','张三','男','11-5月-1990');

//插入部分字段值

insert into student(studentID,name)

values('1101','李四');

insert into student

values('1102','张三',default,null);

6 修改表中的数据

update student 

set name='王五'

where studentID=‘1102’;

三 数据完整性的类型

1 域完整性

      域完整性又称列完整性,制定一个数据集对某一个列是否有效并确定是否允许为空值。域完整性通常是经过使用有效性检查来实现的,还可以通过限制数据类型、格式或者可能的取值范围来实现。

2 实体完整性

      实体完整性又称行完整性,要求表中的每一行有一个唯一的标志符,这个标志符就是主关键字。

3 参照完整性

     参照完整性又称引用完整性。参照完整性保证主表中的数据与从表中的数据的一致性。

四 定义数据完整性

1 定义主键约束

create table student

(studentID char(6) primary key,

name varchar2(8),

sex char(2) default '男');

create table student

(studentID char(6) ,

name varchar2(8),

sex char(2) default '男',

primary key(studentID));//复合主键只能用这种

create table student

(studentID char(6) ,

primary key(studentID),

name varchar2(8),

sex char(2) default '男');


2 定义不允许为空约束

create table student

(studentID char(6) ,

primary key(studentID),

name varchar2(8) not null,

sex char(2) default '男');


3 定义唯一性约束

create table student

(studentID char(6) ,

primary key(studentID),

name varchar2(8) unique,

sex char(2) default '男');


4 定义检查约束

create table student

(studentID char(6) ,

primary key(studentID),

name varchar2(8),

age number(3) check(age>=18 and age<=30),

sex char(2) default '男');


5 定义外键约束

create table department

(deptID int primary key;

deptName varchar2(20));

create table student

(studentID char(6) ,

primary key(studentID),

name varchar2(8),

sex char(2) default '男',

deptID int references department(deptID));







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值