[MySQL]MySQL库的操作

news2024/12/28 12:58:34

[MySQL]MySQL库的操作

文章目录

  • [MySQL]MySQL库的操作
    • 1. 创建数据库
    • 2. 字符集和校验规则
      • 2.1. 基本概念
      • 2.2. 查看系统默认字符集以及校验规则
      • 2.3. 查看数据库支持的字符集
      • 2.4 查看数据库支持的校验规则
      • 2.5 指明字符集和校验规则创建数据库
      • 2.6 校验规则对数据库的影响
    • 3. 删除数据库
    • 4. 查看数据库
      • 4.1 查看数据库
      • 4.2 显示创建语句
      • 4.3 查看当前所处数据库
    • 5. 使用数据库
    • 6. 修改数据库
    • 7. 备份和恢复
      • 7.1 备份
      • 7.2 还原
    • 8. 查看连接情况
    • 9. 关于数据库操作

1. 创建数据库

语法:

CREATE DATABASE [IF NOT EXISTS] db_name[create_specification [,create_specification] ...]

create_specification:
[DEFAULT] CHARACTER SET charset_name  	#指定字符集
[DEFAULT] COLLATE collation_name		#指定校验规则

说明:

  • 大写的表示关键字
  • [] 是可选项
  • CHARACTER SET: 指定数据库采用的字符集
  • COLLATE: 指定数据库字符集的校验规则

创建数据库示例:

image-20230702152839567

创建名为database1的数据库:

image-20230702153332360

使用if not exits和不使用的区别:

image-20230702153837161

2. 字符集和校验规则

2.1. 基本概念

创建数据库时,有两个编码集:

  1. 数据库编码集 – 数据库存储数据采用的编码
  2. 数据库校验集 – 读取数据库中数据采用的编码 (支持数据库进行字段比较使用的编码)

数据库的存储本质是以二进制形式存储,只有使用相匹配的编码方式解析数据才能正确地读取数据,而不是读取乱码。数据库无论对数据作何操作,都必须保证编码一致。

2.2. 查看系统默认字符集以及校验规则

语法:

show variables like 'character_set_database';   #查看系统默认字符集
show variables like 'collation_database';		#查看系统默认校验规则

说明:如果在使用SQL语句创建数据库指定了编码格式,数据库采用指定的编码格式,

如果没在创建数据库指定编码格式,数据库采用系统默认的编码格式。

笔者在配置文件中设置了编码格式为utf-8,因此默认采用都是utf-8格式。

查看系统默认字符集以及校验规则示例:

image-20230702161110734

2.3. 查看数据库支持的字符集

查看指令:

show charset;

查看数据库支持的字符集示例:

数据库支持的字符集都是可以使用的,需要时可以采用。

2.4 查看数据库支持的校验规则

查看指令:

show collation;

查看数据库支持的校验规则示例:

image-20230702162110399

2.5 指明字符集和校验规则创建数据库

在创建数据库时,会默认创建一个文件记录字符集以及校验规则。

image-20230702164909002

方式1:

create database d2 charset=utf8;

image-20230702170216429

方式2:

create database d3 character set utf8;

image-20230702170402835

方式3:

create database d4 charset=utf8 collate utf8_general_ci;

image-20230702170515717

说明:在使用指定字符集和校验规则的创建方式时可以借助数据库的字符集表和校验规则表。

image-20230702170926671

image-20230702171046908

2.6 校验规则对数据库的影响

为了说明校验规则对数据库的影响,采用如下示例,创建两个数据库test1,test2,字符集相同为utf8,test1的校验规则为utf8_general_ci[不区分大小写],test2的校验规则为utf8_bin[区分大小写],插入相同的数据,对其进行数据读取。

image-20230702185932219

采用相同的对比条件读取数据:

image-20230702190441264

对数据库进行排序:

image-20230702190712765

3. 删除数据库

语法:

DROP DATABASE [IF EXISTS] db_ name;

删除数据库示例:

image-20230702193011261

执行删除之后的结果:

  • 数据库内部看不到对应的数据库
  • 对应的数据库文件夹被删除,级联删除,里面的数据表全部被删

注意:不要随意删除数据库

4. 查看数据库

4.1 查看数据库

语法:

show databases;

image-20230702193115915

4.2 显示创建语句

语法:

show create database db_name;

显示创建语句示例:

image-20230702194827755

说明:

  • MySQL 建议我们关键字使用大写,但是不是必须的。
  • 数据库名字的反引号``,是为了防止使用的数据库名刚好是关键字
  • /*!40100 default… */ 这个不是注释,表示当前mysql版本大于4.01版本,就执行这句话

4.3 查看当前所处数据库

语法:

select database();

查看当前所处数据库示例:

image-20230702193623006

5. 使用数据库

语法:

use db_name;

使用数据库后,便可以对该数据库内的数据(表)进行各种操作。

使用数据库示例:

image-20230702193632334

6. 修改数据库

语法:

ALTER DATABASE db_name
[alter_spacification [,alter_spacification]...]
alter_spacification:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name

修改数据库示例:

image-20230702194603525

7. 备份和恢复

7.1 备份

语法:

# mysqldump -P 端口号 -u 用户名 -p 密码 -B 数据库名 > 数据库备份存储的文件路径

备份示例:

image-20230702202507415

打开备份文件可以发现,其实把我们整个创建数据库,建表,导入数据的语句都装载这个文件中。

备份多个数据库中的表:

# mysqldump -u 用户名 -p 密码 数据库名 表名1 表名2 > 数据库备份存储的文件路径

备份多个数据库:

# mysqldump -u 用户名 -p 密码 -B 数据库名1 数据库名2 ... > 数据库存放路径
  • 如果备份一个数据库时,没有带上-B参数, 在恢复数据库时,需要先创建空数据库,然后使用数据库,再使用source来还原。(实际上就是备份文件中没有备份创建数据库操作)

7.2 还原

mysql> source 备份文件路径;

还原示例:

image-20230702203634377

image-20230702203705564

8. 查看连接情况

语法:

show processlist;

查看连接情况示例:

image-20230702203943423

9. 关于数据库操作

数据库操作中最常见用的就是创建数据库的操作,因为对数据库修改和删除是会对后续操作产生影响的,数据库寻找数据依赖于数据名,数据库校验数据于校验规则,修改数据库的名字和校验规则会导致程序错误,删除数据库会将数据库的内容一并删除,可能造成数据缺失。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/721562.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

经典轻量级神经网络(1)MobileNet V1及其在Fashion-MNIST数据集上的应用

经典轻量级神经网络(1)MobileNet V1及其在Fashion-MNIST数据集上的应用 1 MobileNet V1的简述 自从2017年由谷歌公司提出,MobileNet可谓是轻量级网络中的Inception,经历了一代又一代的更新。 MobileNet 应用了Depthwise 深度可分离卷积来代替常规卷积…

【hadoop】Google的基本思想

Google的基本思想 三架马车GFS分布式文件系统的核心架构和原理机架感知 MapReduce计算模型PageRank问题MapReduce BigTable 三架马车 Google的基本思想主要有三个,称之为三架马车,分别是GFS(Google File System)、MapReduce计算模…

gitlab/gerrit

gitlab/gerrit 1. gitlab2. gerrit2.1 环境准备2.2 下载软件2.3 创建启动账户2.4 安装gerrit2.5 创建登录账户2.6 启动服务2.7 修改配置文件2.8 配置反向代理(nginx)2.9 gerrit主页 3. gitlabgerrit3.1 配置gerrit replication功能(用于复制具体项目)3.2…

深入浅出讲解Stable Diffusion原理,新手也能看明白

说明 最近一段时间对多模态很感兴趣,尤其是Stable Diffusion,安装了环境,圆了自己艺术家的梦想。看了这方面的一些论文,也给人讲过一些这方面的原理,写了一些文章,具体可以参考我的文章: 北方…

51单片机驱动 mg996r金属舵机 STC89C52单片机直接驱动金属大舵机

/*无论是大舵机&#xff0c;还是小舵机&#xff0c;控制方法都一样会区别在 大舵机只能接P0口&#xff08;此口外接上拉&#xff0c;驱动电流最大&#xff09;小舵机任意口 */ //#include<reg51.h> //#define uint unsigned int //#define uchar unsigned char //sbit S…

10、架构:组件通信设计

通信是一个应用中不可或缺的一个功能&#xff0c;现如今前端视图类框架大多数都是由数据驱动&#xff0c;通过数据来进行视图层的展示渲染。举个简单的例子如下&#xff0c;这是一个常见的 React 列表渲染&#xff1a; // each const numbers [1, 2, 3, 4, 5]; const listIte…

应用级监控方案Spring Boot Admin

1.简介 Spring Boot Admin为项目常用的监控方式&#xff0c;可以动态的监控服务是否运行和运行的参数&#xff0c;如类的调用情况、流量等。其中分为server与client&#xff1a; server&#xff1a; 提供展示UI与监控服务。client&#xff1a;加入server&#xff0c;被监控的…

C语言王国探险记之函数的简单概念

王国探险记系列 文章目录&#xff08;5&#xff09; 目录 王国探险记系列 文章目录&#xff08;5&#xff09; 前言 一&#xff0c;函数的基本概念 二&#xff0c;调用外部函数和main()函数区别 2.1如果我们将函数的定义放到后面&#xff0c;可不可以呢&#xff1f; 总结…

插值应用案例1

案例1 一阶线性插值 待加工零件外形根据工艺要求在一组数据(x,y)给定&#xff08;如下表&#xff09;&#xff0c;用程控铣床加工时每一刀只能沿着x方向或y方向走非常小的一步&#xff0c;需要从已知数据得到加工步长很小的(x,y)的坐标。 下表中所给x,y数据位于机翼断面的下…

使用Vue脚手架

(193条消息) 第 3 章 使用 Vue 脚手架_qq_40832034的博客-CSDN博客 初始化脚手架 说明 1.Vue脚手架是Vue官方提供的标准化开发工具&#xff08;开发平台&#xff09; 2.最新的版本是4.x 3.文档Vue CLI脚手架&#xff08;命令行接口&#xff09; 具体步骤 1.如果下载缓慢…

Libvirt Event Loop简介

文章目录 前言实现原理处理框架编程接口 原理验证事件订阅服务监听验证流程 前言 Event Loop顾名思义就是事件循环&#xff0c;整个程序是一个大的循环&#xff0c;通过事件来驱动程序要做的事情。传统编程模型是顺序的&#xff0c;程序运行一次然后终止&#xff0c;这种模型简…

JavaScript Day10 DOM详解

DOM DOM是JS操作网页的接口&#xff0c;全称为“文档对象模型”&#xff08;Document Object Model&#xff09;。它的作用是将网页转为一个JS对象&#xff0c;从而可以用脚本进行各种操作&#xff08;比如增删内容&#xff09;。 • 文档 – 文档表示的就是整个的HTML网页文档…

19-Linux 权限

目录 1.用户操作 1.1.创建用户 1.2.配置密码 1.3. 切换用户 2.三种角色 3.文件类型和访问权限 3.1.文件类型 3.2.基本权限 4.修改文件权限 1.用户操作 Linux下有两种用户&#xff1a; 超级用户&#xff08;root&#xff09;普通用户 超级用户&#xff1a;可以再lin…

【Cache】Redis主从复制哨兵模式集群

文章目录 一、Redis 持久化1. 主从复制2. 哨兵模式3. 集群 二、 Redis 主从复制1. 概述2. 主从复制的作用3. 主从复制流程4. 搭建 Redis 主从复制4.1 环境准备4.2 安装 Redis4.3 修改 Master 节点配置文件4.4 修改Slave节点配置文件&#xff08;Slave1和Slave2配置相同&#xf…

【vant移动端表格数据排版】用vant2简单实现一个把PC端表格数据展示在移动端的排版。上拉加载更多,下拉刷新页面,新增,编辑,删除功能

前言 上次做了一个移动端的表格功能&#xff0c;纯表格的那种。 跟PC一样&#xff0c;但是我一直觉得在移动端上写表格很糟糕的体验&#xff0c;毕竟手机就那么大。这不合理。 但是我这公司又需要把PC端的表格的数据展示在移动端。 导致我只能去试试看怎么排版比较好。由于网上…

【Qt-14】QT小知识点

1、关闭程序时报错 解决方案&#xff1a; 报这个错误可能是内存溢出&#xff0c;申请的空间与注销的空间不一致导致&#xff0c;排查了好久&#xff0c;我不是因为这个原因&#xff0c;我的问题如下&#xff0c;没有new窗体。 2、固定QT窗体大小 this->setMinimumSize(QSi…

NLP实战6:seq2seq翻译实战-Pytorch复现-小白版

目录 一、前期准备 1. 搭建语言类 2. 文本处理函数 3. 文件读取函数 二、Seq2Seq 模型 1. 编码器&#xff08;Encoder&#xff09; 2. 解码器&#xff08;Decoder&#xff09; 三、训练 1. 数据预处理 2. 训练函数 四、训练与评估 &#x1f368; 本文为[&#x1f51…

【算法集训之线性表篇】Day 02

文章目录 题目一思路分析代码实现效果 题目二思路分析代码实现效果 题目一 01.设置一个高效算法&#xff0c;将顺序表L的所有元素逆置&#xff0c;要求其空间复杂度为O(1)。 思路分析 首先&#xff0c;根据题目要求&#xff0c;空间复杂度度为O(1),则不能通过空间换时间的方…

为什么编程更关注内存而很少关注CPU?

我们知道&#xff0c;我们编写的程序&#xff0c;不管是什么编程语言&#xff0c;最后执行的时候&#xff0c;基本上都是CPU在完成。之所以说基本上&#xff0c;是因为还有GPU、FPGA等特殊情况。 但不知道大家发现没有&#xff0c;我们编程的时候&#xff0c;经常在关注内存问…

大促转化率精准预估优化论文随笔记

这是一篇阿里妈妈的论文【KDD’23 | 转化率预估新思路&#xff1a;基于历史数据复用的大促转化率精准预估】 常规的销量预测&#xff0c;遇到一些特大事件&#xff0c;直播、大促&#xff0c;一般很难预估得准确。而且现在电商机制也比较多样&#xff0c;预售、平台折扣等。 本…