当前位置: 首页 > article >正文

MYSQL-创建数据库 CREATE DATABASE (十一)

13.1.11 CREATE DATABASE 语句
-- 创建 数据库的 CREATE 权限
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name
    [create_option] ...

create_option: [DEFAULT] {
    CHARACTER SET [=] charset_name
  | COLLATE [=] collation_name
}
-- 删除 数据库具有 DROP 权限
DROP {DATABASE | SCHEMA} [IF EXISTS] db_name

CREATE DATABASE使用给定名称创建数据库。要使用此语句,您需要数据库的CREATE权限。CREATE SCHEMACREATE DATABASE的同义词。

如果数据库存在并且您未指定 IF NOT EXISTS,则会发生错误。

不允许在具有活动LOCK TABLES语句的会话中创建数据库

每个create_option都指定了一个数据库特性。数据库特征存储在数据库目录中的db.opt文件中。CHARACTER SET选项指定默认的数据库字符集。COLLATE选项指定默认的数据库排序规则。有关字符集和排序规则名称的信息,请参阅第10章“Character Sets, Collations, Unicode”。

要查看可用的字符集和排序规则,请分别使用SHOW CHARACTER SETSHOW COLLATION 语句。参见第 13.7.5.3 节“ SHOW CHARACTER SET 语句”和第 13.7.5.4 节“ SHOW COLLATION 语句”。

MySQL中的数据库被实现为一个目录,其中包含与数据库中的表相对应的文件。因为数据库最初创建时没有表,所以CREATE DATABASE语句只在MySQL数据目录和db.opt文件下创建一个目录。第9.2节“模式对象名称”给出了允许的数据库名称规则。如果数据库名称包含特殊字符,则数据库目录的名称包含这些字符的编码版本,如第9.2.4节“标识符到文件名的映射”所述。

如果在数据目录下手动创建一个目录(例如,使用mkdir),服务器会将其视为数据库目录,并显示在SHOW DATABASES的输出中。

创建数据库时,让服务器管理目录和其中的文件。直接操作数据库目录和文件可能会导致不一致和意外结果。

MySQL对数据库的数量没有限制。底层文件系统可能对目录数量有限制。

您还可以使用mysqladmin程序创建数据库。请参阅第4.5.2节“mysqladmin——MySQL服务器管理程序”。

查看数据库创建语句

SHOW CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name
mysql> show create database world;
+----------+---------------------------------------------------------------------------------+
| Database | Create Database                                                                 |
+----------+---------------------------------------------------------------------------------+
| world    | CREATE DATABASE `world` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_bin */ |
+----------+---------------------------------------------------------------------------------+
1 row in set (0.06 sec)

mysql> show create schema world;
+----------+---------------------------------------------------------------------------------+
| Database | Create Database                                                                 |
+----------+---------------------------------------------------------------------------------+
| world    | CREATE DATABASE `world` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_bin */ |
+----------+---------------------------------------------------------------------------------+
1 row in set (0.05 sec)

mysql> 

创建数据库

## 创建数据库
mysql> create database test;
Query OK, 1 row affected (0.01 sec)
## 查看数据库
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| dbsnmp             |
| mysql              |
| performance_schema |
| sakila             |
| sys                |
| test               |
| world              |
+--------------------+
8 rows in set (0.00 sec)

切换数据库

## 切换数据库
mysql> use world;
Database changed

查看数据库中存在的表

## 显示数据库中的表
mysql> show tables;
+-----------------+
| Tables_in_world |
+-----------------+
| city            |
| city_view       |
| country         |
| countrylanguage |
+-----------------+
4 rows in set (0.03 sec)

mysql> 

http://www.kler.cn/a/500721.html

相关文章:

  • 【复习小结】1-13
  • js:正则表达式
  • Three.js教程015:全面讲解Three.js的UV与应用
  • [程序设计]—代理模式
  • SQL多表联查、自定义函数(字符串分割split)、xml格式输出
  • 蠕虫病毒会给服务器造成哪些危害?
  • vue3后台系统动态路由实现
  • centos 搭建nginx+配置域名+windows访问
  • Vue 开发者的 React 实战指南:性能优化篇
  • 【Ubuntu与Linux操作系统:九、Shell编程】
  • Perl语言的编程范式
  • 简历整理YH
  • Django 社团管理系统的设计与实现
  • SpringBoot项目实战(39)--Beetl网页HTML文件中静态图片及CSS、JS文件的引用和展示
  • 如何在Go语言开发中实现高性能的分布式日志收集
  • 【微服务】面试 2、服务雪崩
  • 【网络】:网络编程套接字
  • 《机器学习》集成学习之随机森林
  • 双因素身份验证技术在NPI区域邮件安全管控上的解决思路
  • Java Web开发基础:HTML的深度解析与应用
  • 基于SSM实现的垃圾分类平台系统功能实现二
  • CSS3 弹性盒子
  • 第三十六章 Spring之假如让你来写MVC——拦截器篇
  • vue3树形组件+封装+应用
  • STM32供电参考设计