MySQL数据库手册DATABASE操作与编码(小白入门篇)
作者:Hunter后端 发布时间:2024-01-24 16:20:54
引言
“ 这是MySQL系列笔记的第二篇,文章内容均为本人通过实践及查阅资料相关整理所得,可用作新手入门指南,或者个人知识点查阅。”
这一篇笔记介绍 DATABASE 相关操作
1、DATABASE 相关操作
首先通过 root 账号,或者前面我们创建的 hunter 账号进入 MySQL 服务
这两者对于我们,接下来的操作影响都不大,因为我们只是需要对数据库的数据进行操作。
MySQL 的结构应该都了解,库->表->字段,大概是这 * 。
其中,DATABASE 就是我们的库。
查看 DATABASE
通过下面的命令查看当前用户的数据库:
SHOW DATABASES;
这个命令输入后,就会列出当前用户可以使用的所有的数据库
如果是想根据关键词来搜索,加上 like 操作:
show databases like '%db%';
注意:数据库命令对于大小写是不敏感的,比如上面的命令,小写写成 show databases 也是可以的
创建 DATABASE
如果我们想创建一个名为 db_test 的数据库,命令如下:
create database db_test;
然后执行 show database 可以看到刚刚创建的 DATABASE
使用 DATABASE
在上一步列出数据库后,如果要使用某个数据库,使用 use 命令,假设数据库为 db_test:
use db_test;
然后就会进入到这个数据库,就可以查看这个数据的相关信息,比如查看所有表,查看某张表数据等操作
如果是想切换到另一个数据库,比如,切换到 db_test_2,直接重复上面的命令,替换 DATABASE 的名称即可:
use db_test_2;
这样就切换到了 db_test_2 数据库
注意: 在每一次进入 MySQL 之后,如果要操作表,都需要使用这条命令才可以操作表数据
删除 DATABASE
删除命令为 drop,使用方式如下:
drop database db_test;
然后执行 show databases 就可以看到 db_test 数据库已经不存在了。
查看 DATABASE 创建命令
比如对于数据库 db_test,我们想创建一个跟它一模一样的数据库,但是名称不一样,为 db_test_2,我们可以先查看 db_test 的创建命令,然后将名称替换成 db_test_2 即可:
show create database db_test;
然后可以看到输出:
CREATE DATABASE `db_test` /*!40100 DEFAULT CHARACTER SET latin1 */
可以看到这条创建 DATABASE 的命令后面加了一些东西,这个就是数据库的编码信息,这个编码信息在下面会介绍到
注意: 数据库名称是不可更改的
查看数据库所在目录
show variables like '%datadir%';
2、DATABASE 编码
如果是直接通过 create database db_test 的方式来创建数据库,系统会默认给库的编码为 latin1,这种编码方式是不支持中文的。
而如果我们在创建 DATABASE 的时候,使用了某个编码,在后面创建表的时候,会沿用 DATABASE 的编码,而表字段也会沿用表的编码。
所以,如果想要想要数据库表插入的数据支持中文,在创建库的时候就需要对库的编码进行指定,以下是创建库时指定编码的命令:
CREATE DATABASE db_test DEFAULT CHARACTER set utf8;
注意: 这个地方 utf8 编码能支持中文的三个字节,而如果有往 MySQL 存储 Emoji 表情或者其他特殊字符为四个字节的情况,需要用上 utf8mb4 的编码。
创建了数据库之后,可以通过下面的命令查看数据库编码:
use db_test;
show variables like '%character%';
在给出的数据里,可以看到 character_set_database 这一行就是我们的数据库编码
修改数据库编码
如果我们在创建数据库的时候没有指定编码,那么系统就会默认使用 latin1 编码,可以通过下面的方式来修改 DATABASE 的编码:
alter database db_test default character set utf8mb4;
来源:http://r4.gs/89BM
猜你喜欢
- 判断汉字if (System.Text.Encoding.GetEncoding("gb2312").GetBytes(
- 本文实例为大家分享了python实现图像拼接的具体代码,供大家参考,具体内容如下1.待拼接的图像2. 基于SIFT特征点和RANSAC方法得
- 一、在访客的内心深处做导航我讨厌迷失,不管是在道路上或是在线网络上。猜想一下?您的访客也是这样的。就像我们期望看到的道路上的路标一样,来帮助
- 阅读上一章:Chapter 7 锚点 Chapter 8 再谈清单先前在第一章,我们讨论过几种标记清单的做法,研究以<ul>和&
- 左右布局,图片的宽度不固定。正好前几天测试闭合浮动元素时发现了overflow的特殊现象,倒是正好可以用在这里。测试通过:ie6/7&nbs
- 最近研究研究了css,少不了去网上分析一下别人的网页, 但很多网站的css文件都是要么写在一行,要么一个换行都没有,看起来极其痛苦,所以写一
- 使用机器学习训练数据时,如果数据量较大可能我们不能够一次性将数据加载进内存,这时我们需要将数据进行预处理,分批次加载进内存。下面是代码作用是
- function.js<!--function getObject(objectId) { &nbs
- 一般事件事件浏览器支持描述onClickIE3|N2|O3鼠标点击事件,多用在某个对象控制的范围内的鼠标点击onDblClickIE4|N4
- 问题:无法上传较大的文件“Request 对象 错误 'ASP 0104 : 80004005'”或者上传成功后,找不到文件
- 校勘(collation)是指对代码页、字母大小写、音调、语言和字母表的整理,很多校勘都是在数据进入数据库之前进行的,根据我的经验,北美的大
- 最近一直在玩数独,突发奇想实现图像识别求解数独,输入到输出平均需要0.5s。整体思路大概就是识别出图中数字生成list,然后求解。输入输出d
- 一、默认参数python为了简化函数的调用,提供了默认参数机制:这样在调用pow函数时,就可以省略最后一个参数不写:在定义有默认参数的函数时
- 非常抱歉,今天早上 6:37~8:15 期间,由于获取网站首页博文列表的 SQL 语句出现突发的查询超时问题,造成访问网站首页时出现 500
- 1.1 方法归纳使用 + 直接将多列合并为一列(合并列较少);使用pandas.Series.str.cat方法,将多列合并为一列(合并列较
- 在本章中,我们将学习如何使用 Bootstrap 创建表单。Bootstrap 通过一些简单的 HTML 标签和扩展的类即可创建
- 本文主要介绍了一个将 MongoDB 中的数据导入到 MySQL 中的 Python 工具类 MongoToMysql。该工具类实现了获取
- 可以说,互联网就是由一个个链接进行信息流通的。没有连接的网站如同一潭死水,毫无生气。当一个访客进入你的网站,在浏览的过程中,如果你的内容不引
- Python中会遇到很多关于排序的问题,今天小编就带给大家实现插入排序的方法。在Python中插入排序的基本原理类似于摸牌,将摸起来的牌插入
- python的多线程比较鸡肋,优先使用多进程1 基础知识现在的 PC 都是多核的,使用多线程能充分利用 CPU 来提供程序的执行效率。1.1