在 MySQL 中,可以使用 CREATE DATABASE 语句创建数据库,语法格式如下:

CREATE DATABASE [IF NOT EXISTS] <数据库名>
[[DEFAULT] CHARACTER SET <字符集名>]
[[DEFAULT] COLLATE <校对规则名>];

[ ]中的内容是可选的。语法说明如下:

  • <数据库名>:创建数据库的名称。MySQL 的数据存储区将以目录方式表示 MySQL
    数据库,因此数据库名称必须符合操作系统的文件夹命名规则,不能以数字开头,尽量要有实际意义。注意在 MySQL 中不区分大小写。
  • IF NOT EXISTS:在创建数据库之前进行判断,只有该数据库目前尚不存在时才能执行操作。此选项可以用来避免数据库已经存在而重复创建的错误。
  • [DEFAULT] CHARACTER SET:指定数据库的字符集。指定字符集的目的是为了避免在数据库中存储的数据出现乱码的情况。如果在创建数据库时不指定字符集,那么就使用系统的默认字符集。
  • [DEFAULT] COLLATE:指定字符集的默认校对规则。

MySQL 的字符集(CHARACTER)和校对规则(COLLATION)是两个不同的概念

字符集是用来定义 MySQL 存储字符串的方式,校对规则定义了比较字符串的方式。后面我们会单独讲解 MySQL 的字符集和校对规则。

实例1:最简单的创建 MySQL 数据库的语句
在 MySQL 中创建一个名为 test_db 的数据库。在 MySQL 命令行客户端输入 SQL 语句CREATE DATABASE test_db;即可创建一个数据库,输入的 SQL 语句与执行结果如下。

mysql> CREATE DATABASE test_db;
Query OK, 1 row affected (0.12 sec);

“Query OK, 1 row affected (0.12 sec);”提示中,
“Query OK”表示上面的命令执行成功,
“1 row affected”表示操作只影响了数据库中一行的记录,
“0.12 sec”则记录了操作执行的时间。

若再次输入CREATE DATABASE test_db;语句,则系统会给出错误提示信息,如下所示:

mysql> CREATE DATABASE test_db;
ERROR 1007 (HY000): Can't create database 'test_db'; database exists

提示不能创建“test_db”数据库,数据库已存在。MySQL 不允许在同一系统下创建两个相同名称的数据库。

可以加上IF NOT EXISTS从句,就可以避免类似错误,如下所示:

mysql> CREATE DATABASE IF NOT EXISTS test_db;
Query OK, 1 row affected (0.12 sec)

实例2:创建 MySQL 数据库时指定字符集和校对规则

使用 MySQL 命令行工具创建一个测试数据库,命名为 test_db_char,指定其默认字符集为 utf8,默认校对规则为 utf8_chinese_ci(简体中文,不区分大小写),输入的 SQL 语句与执行结果如下所示:

CREATE DATABASE IF NOT EXISTS test_db_char
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE utf8_bin;Query OK, 1 row affected (0.03 sec)

这时,可以使用SHOW CREATE DATABASE查看 test_db_char 数据库的定义声明,发现该数据库的指定字符集为 utf8,运行结果如下所示:

mysql> SHOW CREATE DATABASE test_db_char;
+--------------+-----------------------------------------------------+
| Database     | Create Database                                     |
+--------------+-----------------------------------------------------+
| test_db_char | CREATE DATABASE `test_db_char` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+--------------+-----------------------------------------------------+
1 row in set (0.00 sec)

“1 row in set (0.00 sec)”表示集合中有 1 行信息,处理时间为 0.00秒。时间为 0.00 秒并不代表没有花费时间,而是时间非常短,小于 0.01 秒。

4、MySQL创建数据库(CREATE DATABASE语句)相关推荐

  1. mysql创建数据库CREATE DATABASE

    方法一.指定其默认字符集为 utf8,默认校对规则为 utf8_chinese_ci(简体中文,不区分大小写) CREATE DATABASE IF NOT EXISTS `community` CH ...

  2. mysql创建database_MySQL Create Database 创建数据库

    创建数据库 CREATE DATABASE 语法用于创建一个数据库. 语法: CREATE DATABASE db_name PHP MySQL 函数库中,mysql_query() 函数用于向 My ...

  3. MySQL创建数据库表的语句和基础语句

    下面的代码将使用sql语句创建一个数据库表. 格式: CREATE TABLE [IF NOT EXISTS] `表名` (`字段名` 列类型 [属性] [索引] [注释],`字段名` 列类型 [属性 ...

  4. OMG!mysql创建数据库的sql语句代码

    为什么学Java?Java能干什么? 每年转行想做程序员的人都不少,这个行业不像销售一样,你不必要懂那么多人情世故:也不像某些"安稳岗位"一样,工资较低.程序员靠技术恰饭,没有那么 ...

  5. mysql创建数据库与表_PHP MySQL 创建数据库和表 之 Create

    创建数据库 CREATE DATABASE 语句用于在 MySQL 中创建数据库. 语法 CREATE DATABASE database_name 为了让 PHP 执行上面的语句,我们必须使用 my ...

  6. PHP教程 数据库和MySQL_PHP教程 - MySQL 创建数据库和表

    PHP MySQL 创建数据库和表 数据库存有一个或多个表. 创建数据库 CREATE DATABASE 语句用于在 MySQL 中创建数据库. 语法 CREATE DATABASE database ...

  7. 用php创建数据库代码,php创建数据库_PHP MySQL 创建数据库与表示例

    摘要 腾兴网为您分享:PHP MySQL 创建数据库与表示例,掌上新华,携程,小牛,苏宁易购等软件知识,以及死神觉醒ios,花视频,s3云存储,华为谷歌器,学成网,cf掌上,互刷天下,抖音批量,润乾报 ...

  8. mysql创建表语句 cmd_mysql cmd命令行 创建数据库 表 基础语句

    一.连接MYSQL 格式: mysql -h主机地址 -u用户名 -p用户密码 1. 连接到本机上的MYSQL. 首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u roo ...

  9. php mysql bootstart_PHP MySQL 创建数据库

    PHP MySQL 创建数据库 数据库存有一个或多个表. 你需要 CREATE 权限来创建或删除 MySQL 数据库. 使用 MySQLi 和 PDO 创建 MySQL 数据库 CREATE DATA ...

  10. 查看mysql创建 数据库_Mysql创建数据库和查看数据库

    1.create database  ;(创建数据库) create database mydb1 =(自定义) [DEFAULT] CHARACTER SET charset_name  -- CH ...

最新文章

  1. 整理:各个浏览器及web服务器对URL(get)长度的限制
  2. [题解]第十一届北航程序设计竞赛预赛——L.偶回文串
  3. 安卓APP_ 四大基本组件(1)—— Activity
  4. 前端学习(2531):Vuex中getter
  5. 四种策略确保 RabbitMQ 消息发送可靠性!你用哪种?
  6. 深度解读SSH免密登录
  7. KR《C语言》书中的一个Bug
  8. mysql enterprise backup 使用_mysql enterprise backup入门使用
  9. wend计算机语言,计算机脚本语言开机显示当前页面发生
  10. 投标是个技术活,不这样做要么苟且,要么狗带
  11. 万能 解决ubuntu网易云音乐不能播放的各种问题
  12. 电子琴c语言及原理图,简易电子琴设计电路图大全(八款模拟电路设计原理图详解)...
  13. win10设置计算机关机时间,Win10怎么设置自动关机时间_Win10设置自动关机教程-192路由网...
  14. grafana text panel配置说明
  15. 获取WI-FI信息以及蜂窝网络信息
  16. ThreadPoolExecutor线程池 —————— 开开开山怪
  17. 小度计算机笔记,“一场无速记发布会”,小度真无线智能耳机革新语音笔记功能...
  18. Selenium-鼠标和键盘操作
  19. 莫提博客 - 简约优雅的个人博客系统
  20. Free RTOS 中断优先级配置

热门文章

  1. ML之RFDT:利用RF(RFR)、DT(DTR)两种算法实现对boston(波士顿房价)数据集进行训练并预测
  2. DL之RNN:基于TF利用RNN实现简单的序列数据类型(DIY序列数据集)的二分类(线性序列随机序列)
  3. BigData之Storm:Apache Storm的简介、深入理解、下载、案例应用之详细攻略
  4. Py之pygame:有趣好玩—利用pygame库实现鱼儿自动实时目标跟踪(附完整代码)
  5. 成功解决PermissionError(权限拒绝解决答案集锦): [Errno 13] Permission denied: ‘f:\\program files\\python\\python36\
  6. Py之easygui:easygui的简介、安装(最正确安装)、使用方法之详细攻略
  7. Python常用扩展包
  8. apply方法和call方法的详解2
  9. AC自动机-洛谷3121 [USACO15FEB]审查(黄金)Censoring (Gold)
  10. C/C++宏定义中#与##区别 .