数据定义:
操作对象 操作方法
创建 删除 修改
模式 create schema drop schema
表 create table drop table alter table
视图 create view drop view
索引 create index drop index
模式:
CREATE SCHEMA <模式名> AUTHORIZATION <用户名> ;
DROP SCHEMA <模式名> <CASCADE(级联)|RESTRICT(限制)> ;
基本表:
CREATE TABLE <表名> ( <列名> <数据类型> [列级完整性约束条件],
<列名> <数据类型> [列级完整性约束条件],
……
[表级完整性约束条件] ) ;
[列级完整性约束条件]
PRIMARY KEY , UNIQUE , NOT NULL ……
[表级完整性约束条件]
PRIMARY KEY (<列名>,<列名>,……<列名>)
FOREIGN KEY (<列名>) REFERENCES <参照表>(<列名>)
[数据类型]
CHAR(N)
VARCHAR(N)
NCHAR(N)
NVARCHAR(N)
INT
SMALLINT
DATE
TIME
NUMERIC(L,D) L总长度 D小数位数
REAL
DOUBLE PRECISION 双精度浮点
FLOAT(N) 浮点数,精度至少为n个数字
模式与表
CREATE TABLE "<模式名>".<表名>(……);
ALTER TABLE <表名>
[ ADD <新列名> <数据类型> [完整性约束] ]
[ DROP <完整性约束名>]
[ ALTER COLUMN <列名> <数据类型>];
DROP TABLE <列名> [RESTRICT | CASCADE];
索引:
CREATE [UNIQUE] [CLUSTER] INDEX <索引名>
ON <表名> (<列名> [<次序>],<列名> [<次序>],<列名> [<次序>]……);
<次序> ASC(升序,缺省) | DESC(降序)
UNIQUE:此索引的每一个索引只对应唯一的数据记录
CLUSTER:表名建立的索引时聚簇索引。索引项的顺序与表中记录的物理顺序一直的索引组织
DROP INDEX <索引名>;
数据查询:
SELECT [ALL|DISTINCT] <目标列表达式>[,<目标列表达式>]……
FROM <表名或视图名>[,<表名或视图名>]……
[WHERE <条件表达式>]
[GROUP BY <列名>[ HAVING <条件表达式>]]
[ORDER BY <列名>[ASC|DESC]];
插入数据:
INSERT INTO <表名> (<属性列>[,<属性列>])
[VALUES (<常量>[,<常量>])] | 子查询;
更新数据:
UPDATE <表名|视图名>
SET <列名>=<表达式>[,<列名>=<表达式>]……
[WHERE <条件>];
删除数据:
DELETE FORM <表名>
[WHERE <条件>];
视图:
CREATE VIEW <视图名> [(<列名>[,<列名>……])]
AS <子查询>
[WITH CHECK OPTION];
[WITH CHECK OPTION]:表示对视图进行UPDATE,INSERT,DELETE 操作时要保证更新、插入、删除的行满足视图定义中的谓词条件(子查询中的条件表达式)。
DROP VIEW <视图名> [CASCADE];
查询视图:数据查询
更新视图:更新数据