一、数据定义
1、模式的定义与删除:
(1)定义模式
CREATE SCHEMA <模式名> AUTHORIZATION <用户名>;
( CREATE SCHEMA 中可以接受CREATE TABLE ,CREATE VIEW和GRANT子句)
即:
CREATE SCHEMA <模式名> AUTHORIZATION <用户名> [ <表定义子句> | <视图定义子句> | <授权定义子句> ] ;
例:
/***如:为用户ZHANG创建一个模式TEST,并且在其中定义一个 表TAB1。***/
CREATE SCHEMA TEST AUTHORIZATION ZHANG
CREATE TABLE TAB1(COL1 SMALLINT,
COL2 INT,
COL3 CHAR(20),
COL4 NUMBER(10,3),
COL5 DECIMAL(5,2)
);
(2)删除模式
DROP SCHEMA <模式名> <CASCADE | RESTRICT>;
(其中 CASCADE(级联) 和 RESTRICT(限制) 必选其一)
2、基本表的定义、删除与修改
(1)定义基本表
CREATE TABLE <表名> ( <列名><数据类型>[列级完整性约束条件]
,<列名><数据类型>[理解完整性约束条件]
......
[,<表级完整性约束条件>]
);
//表级约束性条件的格式:例:PRIMARY KEY(Sno,Cno) ,
FOREIGN KEY (Sno) REFERENCES Student (Sno) /*Sno是外码,被参照表是Student */
(2)数据类型(略)
(3)模式与表(如何将表创建在想要的模式之下,略)
(4)修改基本表
ALTER TABLE<表名>
[ADD [COLUMN] <新列名><数据类型>[完整性约束] ]
[ADD [COLUMN] <列名>[CASCADE | RESTRICT] ]
。。。。。。
(5)删除基本
DROP TABLE <表名> [ RESTRICT | CASCADE ]
3、索引的建立与创建
(1)建立索引
CREATE [UNIQUE] [CLUSTER] INDEX <索引名>
ON <表名> (<列名>[<次序>] [,<列名> [<次序>] ] ......)
/*次序为ASC(升序) 或 DESC(降序),默认为ASC,
UNIQUE表示此索引的每一个索引值只对应唯一的数据记录
CLUSTER表示要建立的索引是聚簇索引*/
(2)删除索引
DROP INDEX <索引名>