数据定义

原创 2016年05月31日 20:25:43

一.模式的定义与删除

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.定义基本表

直接上实例:

建立基本表student
create table student(
      Sno char(10) primary key,
      Sname varchar(10),//在Oracle中,应为vachar2(10)
      Sage small int;
      Ssex char(2)
   );
建立基本表course
create 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;
版权声明:本文为博主原创文章,未经博主允许不得转载。

shell脚本导出自定义的表列数据

  • 2017年12月04日 09:33
  • 186B
  • 下载

Android应用自定义User Data管理(将Settings下的"清除数据"变成"管理空间")

标题略长, 还不好懂, 果断上图说明: 以下是一般应用在Settings应用管理页面下, 显示的"清除数据"按钮   以下是通过配置将"清除数据"变成"管理空间"按钮的截图(点击...
  • hjywyj
  • hjywyj
  • 2015年05月26日 10:21
  • 631

ArcGIS教程:自定义数据框

  • 2016年06月16日 12:16
  • 18KB
  • 下载

QDataStream 运算符重载发送自定义数据结构

Qt4 Gossip: QDataStream 對於純綷的二進位資料,可以使用QDataStream來協助處理,可以直接處理C++基本資料型態、還有許多Qt資料型態,像是QByteArr...

c++自定义数据类型

  • 2017年01月15日 17:43
  • 207KB
  • 下载

数据定义(创建数据库)

  • 2014年11月03日 21:20
  • 219KB
  • 下载

跨平台C/C++数据类型定义

1       需考虑问题 1.1    编译器运行操作系统 l        WINDOWS :  _WIN32、WIN32; l        UNIX/LINUX:  unix...

C#数据定义和初始化教程

  • 2014年03月06日 12:07
  • 28KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:数据定义
举报原因:
原因补充:

(最多只允许输入30个字)