MySQL的建库
转载请注明出处 😃!
手动反爬:MySQL的建库
https://blog.csdn.net/Lyun911/article/details/111309720
注:以下使用 MySQL 演示
MySQL的建库
1 MySQL库的概念:
- 实例(instance):是最大的库(win中是exe),是系统级的库、实体库。在启动mysqld服务器时,会一个操作空间(就像圈了一块地,是“占地面积”,类似于“厂区”。mysql应用就是一个“厂区”)
- 库(Database):在实例中,可以有1个或者多个的Database,是逻辑库(就像在圈地里划分区域用来建楼,是建筑面积,类似于“厂房”。之前在Navicat看到的4个database就是4个“厂房”。而4个“厂房”是相互隔离的)
- 表(Table):在库中,可以有1个或者多个的Table。
2 MySQL的建库语句
CREATE DATABASE [IF NOT EXISTS] <数据库名>
创建一个新的数据库
[[DEFAULT] CHARACTER SET <字符集名>]
指定数据库的默认字符集
其中,默认“字符集名”有中文时,应该设置为“UTF-8”要不会出现乱码
[[DEFAULT] COLLATE <校对规则名>]
指定字符集的默认校对规则
其中,默认“校对规则名”用来确定存储数据的排序方式(比如A-Z,a-z)
MySQL 的字符集(CHARACTER)和校对规则(COLLATION)两个不同的概念:字符集是用来定义 MySQL 存储字符串的方式,校对规则定义了比较字符串的方式,解决排序和字符分组的问题。
3 MySQL的建库
3.1 案例1:创建一个数据库(新建表,设置字符集)
3.2.1 用Navicat创建新数据库db1
注意:不填写Character set和Collation的话,系统会自动分配,默认为拉丁语系。此时用中文的话会出现乱码。
特别注意:如果数据库中已经有大量的数据之后想要转换Character set,直接改变database的Character set的话很可能会破坏数据,最好的方法是将原数据库复制一份之后进行转码。
乱码的情况示例:
(先创建一个新的table,输入内容)
在表中输入中文,保存后再次打开,看到的是乱码
3.1.2 用CMD创建新数据库db2
还是先在CMD中打开root账号
输入:create database db2 ;
即可创建成功
3.2 案例2:创建一个指定字符集和校对规则的数据库
创建一个UTF-8的新数据库db1,确认之后,Collation会自动选择为UTF-8对应的校对规则
创建新的表,输入中文,再次打开就不会出现错误了
3.3 案例3:修改现有数据库的字符集
Navicat右键就可以修改了
3.4 删除数据库
Navicat右键-Delete即可
CMD输入:drop database db2 ;