本文为mariadb官方手册:CREATE DATABASE的译文。
CREATE [OR REPLACE] {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [create_specification] ... create_specification: [DEFAULT] CHARACTER SET [=] charset_name | [DEFAULT] COLLATE [=] collation_name
CREATE DATABASE创建一个给定名称的数据库。该语句要求对database具有CREATE权限。CREATE SCHEMA是CREATE DATABASE的同义词。如果使用了IF NOT EXISTS子句,当数据库已存在时将返回一条warning信息而不是返回错误。
MariaDB starting with 10.1.3 在MariaDB 10.1.3中引入了OR REPLACE子句。 如果使用了可选的OR REPLACE子句,它是下面语句的简写形式:
DROP DATABASE IF EXISTS db_name;CREATE DATABASE db_name ...;
当使用了IF NOT EXISTS子句,当指定的数据库已存在时,MariaDB将返回一个warning而不是错误信息。
CREATE DATABASE db1;Query OK, 1 row affected (0.18 sec)CREATE DATABASE db1;ERROR 1007 (HY000): Can't create database 'db1'; database existsCREATE OR REPLACE DATABASE db1;Query OK, 2 rows affected (0.00 sec)CREATE DATABASE IF NOT EXISTS db1;Query OK, 1 row affected, 1 warning (0.01 sec)SHOW WARNINGS;+-------+------+----------------------------------------------+| Level | Code | Message | +-------+------+----------------------------------------------+| Note | 1007 | Can't create database 'db1'; database exists | +-------+------+----------------------------------------------+
设置字符集和排序规则。详细信息见设置字符集和排序规则。
CREATE DATABASE czech_slovak_names CHARACTER SET = 'keybcs2' COLLATE = 'keybcs2_bin';