人人范文网 范文大全

Oracle05表操作和约束

发布时间:2020-03-03 12:51:53 来源:范文大全 收藏本文 下载本文 手机版

一、DDL数据定义语言 1.创建表:create table 表名要求:

1.必须以字母开头

2.必须在1-30个字符之间

3.必须只能包含A-Z,a-z,0-9,$,_,# 4.必须不能和用户定义的其他对象重名 5.必须不能是Oracle的保留字 例如: 方式一:

create table student( stu_no number(11), name varchar(32), gender char(5), age number(3) default 19//为字段设置默认值 ); Create table test1( ID char(11), Name carchar2(24), Age number(3) default 19); 方式二:子查询建表

Create table user_info As

select first_name,salary,dept_id From s_emp; 2.删除表:drop table 例如,

drop table studentzxf; 3.修改表:alter table Create table tal( Stu_no number(11), Name varchar2(32)); 1.增加一列

Alter table tal add age number(3); 2.增加多列

Alter table tal add(addre varchar2(32),birthday date); 3.删除一列

Alter table tal drop column addre(列名); 4.删除多列

Alter table tal drop(age,birthday); 5.逻辑删除列

Alter table tal set unused column name; Alter talbe tal drop unused columns;//在数据库不繁忙的时候用 Oracle在设计的时候,没有考虑可逆性 6.修改一列

Alter table tal modify stu_no number(20);//将原来的长度为11 修改为长度为20 修改列时注意:

考虑现有数据的安全性(包括数据的类型,长度),修改长度是 只能往大改 如果表中有数据,不可以修改类型,只有当表中没数据了才能修改类型 修改多列

Alter tabale tal modify(stu_no number(11) not null,name char(20)); 7.重命名列

Alter table tal rename column stu_no to s_no; 8.更改约束

Alter table tal add constraint tal_pk primary key(s_no); 9.删掉约束

Alter table test4 drop constraint tal_pk; 10.重命名表名

Rename tal to 新表名 11.添加外键约束

ALTER TABLE tal ADD CONSTRAINT STUDENT_FK FOREIGN KEY (dept_no) REFERENCES dept(dept_no);

二、DML数据操纵语言

1.插入数据:insert 例如: insert into Student values(1,’Jack’);//按表中的自然顺序逐个插入数据

insert into student(stu_no,name) values(1,’Jack’);//指定字段插入值 2.删除数据:delete from[tablename]where… 例如: delete from testdefault where age = 19; 3.修改数据:update[tablename]set a = exp1 where b = exp2 如果没有限定条件,则会修改整张表中的数据,即修改整列。 例如: update Student set age = 24 where name = ‘jack’; 也可一次性写入多条insert语句一次执行完毕。 也可加载脚本(.sql文件)命令@+路径/...sql 4.truncate截断表

delete删除时会产生日志信息的。

truncate删除数据时不生成日志信息,所以效率快,但也不可逆。 truncate截断后会释放表空间,而delete并不释放表空间。

三、约束

考虑数据库的完整性约束 三方面:1.实体完整性

2.参照完整性

3.用户自定义完整性 5种约束:

Not null 非空约束

(nk) 例:Create table stu_info( S_no char(11) not null, S_name varchar2(24) not null, S_age number(3)); Unique 唯一约束 (uk)(只保证唯一,不保证不为空,多条记录的值都可以为空,因为Null和null是不相等的,不会提示违反了唯一性) 方式一:(列级约束) 例:Create table stu_info( S_no char(11) unique not null, S_name varchar2(24) not null, S_age number(3)); 方式二:(表级约束) 例:Create table stu_info( S_no char(11) not null, S_name varchar2(24) not null, S_age number(3), Constraint stu_info_uk unique(S_no,S_name));//约束名为stu_info_uk Primary key 主键约束 (pk)唯一且非空 方式一:(列级约束) 例:create table test2( C1 number(3) constraint test2_pk primary key, C2 number(3)); 方式二:(表级约束) 例:create table test2( C1 number(3), C2 number(3), Primary key(c1,c2));c1 , c2 组合起来是唯一的,c1,c2单独看不一定是唯一的 Atler table tablename add constraint 主键名称primay key

表级约束可以约束很多列,可以定义联合主键,而列级约束是做不到的。

Foreign key 外键约束 (fk)

要求引用另一张表中已存在的值(主键、唯一键)

例:create table parent( C1 number(3) primary key, C2 number(3)); Create table child( C1 number(3) primary key, C2 number(3) references parent(c1)); 先建父表再建子表。

不能随便删除,删除时只能先删子表记录再删父表;删除表时同理。 插入数据时先给父表插,再给子表插。

Drop table parent cascade cinstraint;//删除表时,如果想先删除父表,子表不变 例:create table parent( C1 number(3) primary key, C2 number(3)); Create table child( C1 number(3) primary key, C2 number(3) references parent(c1) on delete cascade);//删除记录时切断关系,删除了子表中的记录再删除父表

级联删除:世纪是先删除子表的记录,再删除父表的记录。表都存在。 学生表:学号 姓名 性别

成绩表:成绩编号 学号 成绩 课程编号 课程表:课程编号 课程名称

外键:

成绩表里面学号应该是学生表

成绩表里面的课程编号应该是课程表里面的课程编号

Create table student(sno number primary key, name varchar2(10),sex varchar2(2)) Create table score(scno number primary key,sno number not null,sco number(5,2),cno number not null references course(cno)) Create table course(cno number primary key,name varchar2(20)); Alter table score add constrain fk_stuandscore foreign key(sno) references student(sno); Check 检查约束 (ck) 方式一:(列级约束)

例:create table test3( C1 number(3) check(c1

例:Create table test3( C1 number(3), C2 number(3), Check(c1 = c2));

建立表和定义完整性约束、数据操作 实验报告

自由和约束

第二章 数据库和表的操作

作文:自由和约束

激励和约束机制

11年最新操作表

论道德约束和法律约束

公共卫生考核操作记录表

顺序表的操作实验报告

EXCEL操作_add工作表

Oracle05表操作和约束
《Oracle05表操作和约束.doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
点击下载本文文档