您的当前位置:首页正文

CREATEDATABASE语句解释

2020-11-09 来源:一二三四网

本文为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信息而不是返回错误。

OR REPLACE

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

当使用了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';
显示全文