数据定义

来源:互联网 发布:唐诗三百首朗读软件 编辑:程序博客网 时间:2024/05/20 05:25

一.模式的定义与删除

1.模式的定义

模式定义语句如下:

create schema <模式名> authorization <用户名>

如:

create schema 'S-T' authorization larry;

定义模式实际上是定义了一个命名空间,在这个空间中可以进一步定义该模式包含的数据库对象,如基本表、视图、索引等。

可以在定义模式的同时定义基本表

create schema 'S-T'authorization Larry   create table student(      Sno char(10) primary key,      Sname varchar(10),//在Oracle中,应为vachar2(10)      Sage small int;      Ssex char(2)   );

2.模式的删除

删除模式的语句如下:

drop schema <模式名><cascade|restrict>

如:

drop schema 'S-T';

选择了cascade(级联),表示在删除模式的同时也会把模式下定义的视图等一并删除;
选择了restrict(限制),表示如果该模式下定义了基本表、视图等,则拒绝该操作。


二.基本表的定义、删除和修改

1.定义基本表

直接上实例:

建立基本表studentcreate table student(      Sno char(10) primary key,      Sname varchar(10),//在Oracle中,应为vachar2(10)      Sage small int;      Ssex char(2)   );建立基本表coursecreate table course(    Cno char(4) primary key,    Cname varchar(20),    Cpno references course(Cno),//这是Oracle的写法    /*这是SQL Server的写法     *Cpno char(4),     *foreign key Cpno references Course(Cno)     */    Ccredit int); 

2.修改基本表

1.增加列

//增加学生高度属性alter table student add Sheight numeric(1,2); 

2.修改列中的域

alter table student modify(Sname varchar(8));//将学生姓名最大长度为10改为最大长度为8/*SQL Server的语法应为 *alter table student alter column Sname varchar(8); */

3.删除基本表

drop table student;

三.索引的建立

1.建立索引的原因

加快查询速度,提高查询效率

2.应当建立索引的情况

  • 主码、外码上应当建立索引
  • 只读或以读为主的表,只要空间允许,可以建立多个索引
  • 等值查询。查询结果的元组数少于总元组数的5%时可以考虑建立索引
  • 范围查询

3.不宜建立索引的情况

  • 属性值很少、不出现或很少出现查询的属性
  • 属性值分布严重不均的属性
  • 经常更新的属性或表
  • 过长的属性
  • 较小的表

4.索引的建立

//在Student表的Sname上建立索引Create cluster index StuSname on Student(Sname); 

索引的结果缺省值是asc(升序)排列,降序为desc。

5.索引的删除

drop index StuSname;
0 0
原创粉丝点击