骏马金龙 (新博客:www.junmajinlong.com)

网名骏马金龙,钟情于IT世界里的各种原理和实现机制,强迫症重症患者。爱研究、爱翻译、爱分享。特借此一亩三分田记录自己成长点滴!!!

翻译:CREATE DATABASE语句

本文为mariadb官方手册:CREATE DATABASE的译文。

原文:https://mariadb.com/kb/en/create-database/
我提交到MariaDB官方手册的译文:https://mariadb.com/kb/zh-cn/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 exists

CREATE 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';
posted @ 2017-09-26 23:08  骏马金龙  阅读(2306)  评论(0编辑  收藏  举报