SQL笔记

2019-04-13 21:33发布

数据定义

模式

  1. 定义模式
    • CREATE SCHEMA <模式名> AUTHORIZATION <用户名>;
    • CREATE SCHEMA <模式名> AUTHORIZATION <用户名> [<表定义子句>|<视图定义子句>|<授权定义子句>];
    • 例子:
    • CREATE SCHEMA TEST AUTHORIZATION ZHANG CREATE TABLE TAB1( COL1 SMALLINT, COL2 INT, COL3 CHAR(20), COL4 NUMERIC(10,3), COL5 DECIMAL(5,2));
  2. 删除模式
    • DROP SCHEMA <模式名> ;

基本表

  1. 定义基本表
    • CREATE TABLE <表名> (<列名><数据类型> [列级完整性约束条件] [,<列名><数据类型> [列级完整性约束条件]] ... [,<表级完整性约束条件>]);
    • 例子:
    • CREATE TABLE STUDENT (SNO CHAR(9) PRIMARY KEY, SNAME CHAR(20) UNIQUE, SSEX CHAR(2), SAGE SMALLINT, SDEPT CHAR(20));
    • CREATE TABLE SC (SNO CHAR(9), CNO CHAR(4), GRADE SMALLINT, PRIMARY KEY(SNO,CNO), FOREIGN KEY(SNO) REFERENCES STUDENT(SNO), FOREIGN KEY(CNO) REFERENCES COURSE(CNO));
  2. 修改基本表
    • ALTER TABLE <表名> [ADD [COLUMN] <新列名> <数据类型> [完整性约束]] [ADD <表级完整性约束>] [DROP [COLUMN] <列名> [CASCADE|RESTRICT]] [DROP CONSTRAINT <完整性约束名> [RESTRICT|CASCADE]] [ALTER COLUMN <列名> <数据类型>];
    • 例子:
    • ALTER TABLE Student ADD s_entrance DATE;
    • ALTER TABLE Student ALTER COLUMN Sage INT;
    • ALTER TABLE Course ADD UNIQUE(Cname);
  3. 删除基本表
    • DROP TABLE <表名> [RESTRICT|CASCADE];

索引

  1. 建立索引
    • CREATE [UNIQUE] [CLUSTER] INDEX <索引名> ON <表名>(<列名> [<次序> [,<列名> [<次序>]]...);
    • 例子:
    • CREATE UNIQUE INDEX Stusno ON STUDENT(Sno);
  2. 修改索引
    • ALTER INDEX <旧索引名> RENAME TO <新索引名>;
  3. 删除索引
    • DROP INDEX <索引名>;

数据查询

  • SELECT [ALL|DISTINCT] <目标列表达式> [,<目标列表达式>] ... FROM <表名或视图名> [,<表名或视图名> ...]|(

    检举类型

    检举原因

    检举说明(必填)