关系数据库标准语言SQL——数据定义

一、数据定义

 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 <索引名>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值