附录C SQL入门之SQL语句的语法

发布时间:2023年12月24日


为帮助读者在需要时找到相应语句的语法,本附录列出了最常使用的SQL语句的语法。每条语句以简要的描述开始,然后给出它的语法。为更方便查询,还标注了相应语句所在的课。
在阅读语句语法时,应该记住以下约定。

  • |符号用来指出几个选择中的一个,因此,NULL | NOT NULL表示或者给出NULL或者给出NOT NULL。
  • 包含在方括号中的关键字或子句(如[like this])是可选的。
  • 下面列出的语法几乎对所有DBMS都有效。关于具体语法可能变动的细节,建议读者参考自己的DBMS文档。

C.1 ALTER TABLE

ALTER TABLE用来更新已存在表的结构。为了创建新表,应该使用CREATE TABLE。详细信息,请参阅第17课
输入▼

ALTER TABLE tablename (

  ADD|DROP column datatype [NULL|NOT NULL] [CONSTRAINTS], 
  ADD|DROP column datatype [NULL|NOT NULL] [CONSTRAINTS], 
  ...
); 

C.2 COMMIT

COMMIT用来将事务写入数据库。详细内容请参阅第20课
输入▼

COMMIT [TRANSACTION]; 

C.3 CREATE INDEX

CREATE INDEX用于在一个或多个列上创建索引。详细内容请参阅第22课
输入▼

CREATE INDEX indexname 
ON tablename (
				column,
 				...
 				); 

C.4 CREATE PROCEDURE

CREATE PROCEDURE用于创建存储过程。详细内容请参阅第19课。正如所述,Oracle使用的语法稍有不同。
输入▼

CREATE PROCEDURE procedurename [parameters] 
[options]
AS 
SQL statement; 

C.5 CREATE TABLE

CREATE TABLE用于创建新数据库表。更新已经存在的表的结构,使用ALTER TABLE。详细内容请参阅第17课
输入▼

CREATE TABLE tablename (
    column datatype [NULL|NOT NULL] [CONSTRAINTS],
    column datatype [NULL|NOT NULL] [CONSTRAINTS],
     ...
  ); 

C.6 CREATE VIEW

CREATE VIEW用来创建一个或多个表上的新视图。详细内容请参阅第18课
输入▼

CREATE VIEW viewname AS
SELECT columns, ...
FROM tables, ...
[WHERE ...]
[GROUP BY ...]
[HAVING ...];

C.7 DELETE

DELETE从表中删除一行或多行。详细内容请参阅第16课
输入▼

DELETE FROM tablename 
[WHERE ...]; 

C.8 DROP

DROP永久地删除数据库对象(表、视图、索引等)。详细内容请参阅第1718课。
输入▼

DROP INDEX|PROCEDURE|TABLE|VIEW 
indexname|procedurename|tablename|viewname;  

C.9 INSERT

INSERT为表添加一行。详细内容请参阅第15课
输入▼

INSERT INTO tablename [(columns, ...)] 
VALUES(values, ...); 

C.10 INSERT SELECT

INSERT SELECT将SELECT的结果插入到一个表。详细内容请参阅第15课
输入▼

INSERT INTO tablename [(columns, ...)] 
SELECT columns, ... 
FROM tablename, ... 
[WHERE ...]; 

C.11 ROLLBACK

ROLLBACK用于撤销一个事务块。详细内容请参阅第20课
输入▼

ROLLBACK [ TO savepointname]; 

或者:
输入▼

ROLLBACK TRANSACTION;  

C.12 SELECT

SELECT用于从一个或多个表(视图)中检索数据。更多的基本信息,请参阅第234课(2~14课都与SELECT有关)。
输入▼

SELECT columnname, ...

FROM tablename, ...
[WHERE ...]
[UNION ...]
[GROUP BY ...]
[HAVING ...]
[ORDER BY ...];

C.13 UPDATE

UPDATE更新表中的一行或多行。详细内容请参阅第16课
输入▼

UPDATE tablename 
SET columname = value, ... 
[WHERE ...]; 

上一篇:第22课 SQL入门之高级SQL特性

文章来源:https://blog.csdn.net/warlack007/article/details/135009275
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。