Oracle SQL建表小结

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Oracle SQL建表小结一下例子在oracle 10g中运行成功。

一,create创表。

Create table 表名

(列名数据类型【列级别完整约束】,

列名数据类型【列级别完整约束】,。。。。。。。。。

【表级别的约束】

);

例子1

create table teacher

(id char(20) primary key,

name char(20) unique ,

sex char(4) constraint t_sex CHECK (sex='男'or sex='女'), age integer constraint t_age check (age >=1 and age <=300 ) );

例子2

create table Student

(Sno char(17) primary key,

Sname char(10) not null,

Sage integer ,

Ssex char(2),

Sdept char(20)

);

create table Course

(Cno char(5) primary key,

Cname char(20) not null,

CPNO char(5),

Ccredit integer ,

FOREIGN KEY CPNO REFERENCES Course(Cno)

);

create table SC

(Sno char(17),

Cno char(5),

Grade numeric(5,2),

primary key(Sno,Cno),

foreign key (Sno) references Student (Sno),

foreign key (Cno) references Course(Cno)

);

上面例子1是创建一个teacher 表以id为主键,名字唯一,性别约束只能是男或者女,年龄在0到300间。

例子2是创建学生表和课程表,然后建立SC。这里主要学习如何建立外键和组合主键。

对于表级别约束例子2中Cpno的值参考Cno。(Cpno是选课的id)

二,alter修改表

如果已经建好表了,但是又要添加列,约束。。。

--添加列

Alter table 表名add 列名数据类型

例子1 alter table course add Cdesc char(200);

--删除列

Alter table 表名drop column 列名

例子2 alter table course drop column cdesc;

--修改列的数据类型

Alter table 表名alter column 列名数据类型;

--修改字符串的长度

alter table course modify Cdesc char(500);

--修改主键

ALTER TABLE tablename --修改表

ADD CONSTRAINT tb_PRIMARY PRIMARY KEY CLUSTERED (列名) /*将你要设置为主键约束的列*/

--修改约束

ALTER TABLE 销售表--修改表

ADD CONSTRAINT ck_sl --创建检查约束

CHECK (数量>= 1 and 数量<= 10000) --添加约束条件

--修改外键alter table 表名

add constraint 外键名称foreign key (字段)

references 关系表名(关系表内字段)

例子alter table course add constraint cp foreign key (cpno) references course (cno);

--创建唯一约束

Alter table Course add unique (Cname)

--删除约束

Alter table 表名drop constraint 约束名

--启用约束

Alter table 表名enable constraint 约束名

相关文档
最新文档