MySQL语句语法主要分为以下三大类:
一、数据定义语句DDL(CREATE,ALTER,DROP,DECLARE)
数据定义语句是用于修改表结构的。
一)、语法提炼:
二)、由上图可知,数据定义语句用于三类对象:数据库、数据表、索引。
1、数据库
①、创建数据库
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [create_specification [,create_specification] ...]
其中 create_specification 为:
[DEFAULT] CHARACTER SET charset_name 或者 [DEFAULT] COLLATE collation_name
create_specification选项用于指定数据库的特性。数据库特性储存在数据库目录中的db.opt文件中。CHARACTER SET子句用于指定默认的数据库字符集。COLLATE子句用于指定默认的数据库整序。
②、修改数据库
ALTER {DATABASE | SCHEMA} [db_name] alter_specification [, alter_specification] ...
其中 alter_specification 为:
[DEFAULT] CHARACTER SET charset_name 或者 [DEFAULT] COLLATE collation_name
ALTER DATABASE用于更改数据库的全局特性。这些特性储存在数据库目录中的db.opt文件中。要使用ALTER DATABASE,您需要获得数据库ALTER权限。
数据库名称可以忽略,此时,语句对应于默认数据库。也可以使用ALTER SCHEMA。
③、删除数据库
DROP {DATABASE | SCHEMA} [IF EXISTS] db_name
DROP DATABASE用于取消数据库中的所用表格和取消数据库。使用此语句时要非常小心!如果要使用DROP DATABASE,您需要获得数据库DROP权限。
2、数据表
①、创建数据表
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
[(create_definition,...)]
[table_options] [select_statement]
或 通过复制原有的数据表来创建数据表,不过不会复制原表的记录。
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name [(] LIKE old_tbl_name [)];
②、修改数据表
③、删除数据表
3、索引
①、创建索引
②、修改数据表
③、删除数据表