数据定义声明
-
改变数据库语句
ALTER {DATABASE | SCHEMA} [db_name]alter_option ...
ALTER {DATABASE | SCHEMA} db_nameUPGRADE DATA DIRECTORY NAMEalter_option: {[DEFAULT] CHARACTER SET [=] charset_name| [DEFAULT] COLLATE [=] collation_name
}
ALTER DATABASE使您能够更改数据库的整体特征。这些特征存储在数据库目录中的db.opt文件中。此语句要求数据库上的ALTER权限。ALTER SCHEMA是ALTER DATABASE的同义词。
数据库名称可以从第一个语法中省略,在这种情况下,该语句适用于默认数据库。如果没有默认数据库,就会出现错误。
字符集和整理选项
CHARACTER SET
子句更改默认数据库字符集。COLLATE
子句更改了默认的数据库整理。
MySQL包括字符集支持,使您能够使用各种字符集存储数据,并根据各种整理执行比较。默认的MySQL服务器字符集和整理是latin1
和latin1_swedish_ci
,但您可以在服务器、数据库、表、列和字符串字面级别指定字符集。
SET NAMES 'utf8';
UPGRADE DATA DIRECTORY NAME
子句在MySQL 5.7中被弃用,并在MySQL 8.0中被删除。如果需要转换MySQL 5.0数据库或表名,解决方法是在升级到MySQL 8.0之前将MySQL 5.0安装升级到MySQL 5.1。
创建数据库
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name