【MySQL5】创建数据库

创建数据库的语法一般是:

create database db_name;

其实,也可以这样写:

create schema db_name;

在MySQL里,databaseschema是同义词。要知道,其实MySQL所谓的数据库,就是一个目录,如果在Windows系统中默认安装MySQL5.7,则MySQL数据的位置,或者数据库的位置都在C:\ProgramData\MySQL\MySQL Server 5.7\Data。因此,我若在该目录下创建目录,也是可以创建实际的数据库,show databases也能显示出来,同样的,我若删除该目录下的一个“数据库”,也是能有效删除数据库的。

如何仅在数据库不存在时创建?

使用if not exists,如下所示:

create database if not exists db_name;

如何在创建数据库的同时指定编码?

如下,使用character set,创建test的同时指定编码为utf-8:

create database if not exists test
character set=utf8;

创建完数据库test后,不妨进入目录C:\ProgramData\MySQL\MySQL Server 5.7\Data\test,将发现文件db.opt,打开看看:

default-character-set=utf8
default-collation=utf8_general_ci

可以看到,default-character-set设置的是编码。
我们也可以看到,default-collation的值是utf8_general_ci,意思是排序规则或比较规则是不区分大小写的,如果我们希望大小写敏感,可以设置为utf8_bin

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • MYSQL 基础知识 1 MySQL数据库概要 2 简单MySQL环境 3 数据的存储和获取 4 MySQL基本操...
    Kingtester阅读 12,342评论 5 116
  • 工具:myeclipse2014 mysql5.7 mysql 链接驱动 :mysql-connector-...
    前端杨肖阅读 7,404评论 1 8
  • 前段时间公司内部博客上凯哥分享了一篇关于mysql字符集编码的文章,之前我对mysql字符集一块基本没有深究过,看...
    __七把刀__阅读 11,559评论 14 18
  • show charcater set; show variables like '%character%'; 1....
    SkTj阅读 5,434评论 0 2
  • 天寒气冷,人生不景。近来寒潮广沛流布,虽江南不能免,闻重庆、南京、广州、台湾等地皆有雪,足见斯盛!昨夜和衣而眠,梦...
    铜鞮伯华阅读 2,905评论 0 2