BabyCow的博客

博观而约取,厚积而薄发

SQL语言基础-数据定义

1、定义基本表

SQL语言使用动词CREATE定义基本表,其具体语法格式如下:

CREATE TABLE <表名>

(<列名><数据类型>[列级完整性约束条件]...[,<列名><数据类型>[列级完整性约束条件]][,<级完整性约束条件>]);

例如:建立一个学生表Student,它由学号Sno,姓名Sname,性别Ssex,年龄Sage,所在系Sdept这5个属性组成。其中学号不能为空,值是唯一的,并且姓名取值也唯一。SQL命令如下:

CREATE TABLE Student

(Sno CHAR(5) NOT NULL UNIQUE,

 Sname CHAR(20) UNIQUE,

 Ssex CHAR(2),

 Sage INT,

 Sdept CHAR(15));

 

定义表的各个属性时需要指明其数据类型及长度。
SMALLINT 半字长二进制整数。
INTEGER或INT 全字长二进制整数。
DECIMAL(p[,q])或DEC(p[,q])  压缩十进制数,共P位,其中小数位有q位。
0<=q<=p<=15,q=0时可以省略不写。
FLOAT 双字长浮点数。
CHARTER(n)或CHAR(n) 长度为n的定长字符串。
VARCHAR(n) 最大长度为n的变长字符串。
GRAPHIC(n) 长度为n的定长图形字符串。
VARGRAPHIC(n) 最大长度为n的变长图形字符串。
DATE 日期型,格式为YYYY-MM-DD。
TIME 时间型,格式为HH.MM.SS。
TIMESTAMP 日期加时间。

 

2、修改基本表

包括增加新列、删除约束、修改数据类型。修改基本表的命令格式如下:

ALTER TABLE <表名>

[ADD<新列名><数据类型>[完整性约束]]               //增加新列

[DROP<完整性约束名>]                                     //删除约束

[MODIFY<列名><数据类型>];                          //修改数据类型

例如:向Student表增加“入学时间”列Scome,其数据类型为日期型。SQL命令如下:

ALTER TABLE ADD Scome Scome Date;

 

3、删除基本表

DROP TABLE <表名>

例如:要删除名为Student的表,SQL命令如下:

DROP TABLE Student;

注意:基本表一旦被删除,表中的数据,表上建立的索引和视图都将自动被删除。

 

4、建立索引

建立索引的命令格式如下:

CREAT [Unique][Cluster]INDEX<索引名>ON<表名>(<列名>[<次序>][,<列名>[<次序>]]...);

其中<次序>可以为ASC(升序,默认)、DESC(降序)。

Unique:每个索引值只对应唯一的数据记录。

Cluster:聚簇索引,即索引项的顺序与表中记录的物理顺序一致。

例如:要在Student表的Sname列上建立一个聚簇索引Stuname,并按升序排列的命令为:

CREAT Cluster INDEX Stuname ON Student(Sname); 

 

5、删除索引

删除索引的命令格式如下:

DROP INDEX <索引名>

例如:要删除Student表的索引Stuname,SQL命令如下:

DROP INDEX Stuname;

阅读更多
个人分类: 数据库
想对作者说点什么? 我来说一句

oracle数据库基础

2017年03月23日 157KB 下载

SQL 语言基础SQL 语言基础

2008年09月29日 1.02MB 下载

oracle PL-SQL语言初级教程

2011年01月14日 708KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭