【Hello mysql】 数据库库操作

这篇具有很好参考价值的文章主要介绍了【Hello mysql】 数据库库操作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Mysql专栏:@Mysql
本篇博客简介:介绍数据库的库操作

创建数据库

创建数据库的语法格式如下

CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [,
create_specification] ...]
create_specification:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_nam
  • 大写的表示关键字 (其实mysql中大小写并不严格 所以我们使用小写关键字也可以 )
  • [] 是可选项
  • CHARACTER SET: 指定数据库采用的字符集
  • COLLATE: 指定数据库字符集的校验规则

什么是字符集和校验规则

我们简单理解下 字符集就是向计算机中存储数据的格式 校验规则就是从计算机中取出数据的格式

创建数据库案例

创建名为db1的数据库

【Hello mysql】 数据库库操作,Mysql,数据库,mysql,oracle

说明:当我们创建数据库没有指定字符集和校验规则时,系统使用默认字符集:utf8,校验规则
是:utf8_ general_ ci

创建一个使用utf8字符集的 db2 数据库

【Hello mysql】 数据库库操作,Mysql,数据库,mysql,oracle

创建一个使用utf字符集 并带校对规则的 db3 数据库

【Hello mysql】 数据库库操作,Mysql,数据库,mysql,oracle

字符集和校验规则

什么是字符集和校验规则

我们简单理解下 字符集就是向计算机中存储数据的格式 校验规则就是从计算机中取出数据的格式

一般来说字符集和校验规则是要配套的

查看系统默认字符集和校验规则

show variables like 'character_set_database';
show variables like 'collation_database';

【Hello mysql】 数据库库操作,Mysql,数据库,mysql,oracle

查看数据库支持的字符集和校验规则

show charset // 查看支持的字符集

【Hello mysql】 数据库库操作,Mysql,数据库,mysql,oracle

show collation; // 查看支持的字符集校验规则

【Hello mysql】 数据库库操作,Mysql,数据库,mysql,oracle

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

创建一个数据库 校验规则使用utf8_ general_ ci[不区分大小写]

create database test1 collate utf8_general_ci
use test1;
create table person(name varchar(20));
insert into person values('a');
insert into person values('A');
insert into person values('b');
insert into person values('B');

创建一个数据库 校验规则使用utf8_ bin[区分大小写]

create database test2 collate utf8_bin;
use test2
create table person(name varchar(20));
insert into person values('a');
insert into person values('A');
insert into person values('b');
insert into person values('B');

表的字符集校验规则默认是数据库的字符集校验规则

之后我们分别对于这两个表进行查询和排序

查询

不区分大小写

mysql> use test1;
mysql> select * from person where name='a';
+------+
| name |
+------+
| a  |
| A  |
+------+
2 rows in set (0.01 sec)

区分大小写

mysql> use test2;
mysql> select * from person where name='a';
+------+
| name |
+------+
| a  |
+------+
2 rows in set (0.01 sec)

结果排序

不区分大小写

mysql> use test1;
mysql> select * from person order by name;
+------+
| name |
+------+
| a  |
| A  |
| b  |
| B  |
+------+

区分大小写

mysql> use test2;
mysql> select * from person order by name;
+------+
| name |
+------+
| A  |
| B  |
| a  |
| b  |
+------+

通过上面的两组对比我们可以很明显的发现字符集的校验规则能够影响到数据的查询和排序

操纵数据库

查看数据库

语法:

show databases;

【Hello mysql】 数据库库操作,Mysql,数据库,mysql,oracle

显示创建语句

语法:

show create database test1;

它的作用是显示创建数据库的语句

比如说我们使用gbk字符集创建test1数据库 之后使用显示创建语句

【Hello mysql】 数据库库操作,Mysql,数据库,mysql,oracle

我们可以发现在下面的记录中展示了test1数据库的字符集

需要注意的是

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

修改数据库

一般来说我们修改数据库就是修改数据库的字符集还有校验规则

修改数据库名字和属性都是很危险的事情 很可能会导致一系列的问题

语法如下

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

比如说我们修改test1数据库的字符集为utf8

【Hello mysql】 数据库库操作,Mysql,数据库,mysql,oracle

我们可以看到字符集成功被修改为utf8了

数据库删除

语法:

DROP DATABASE [IF EXISTS] db_ name;

比如说我们要删除test1数据库

【Hello mysql】 数据库库操作,Mysql,数据库,mysql,oracle

此外还有一种方法可以删除数据库

我们可以使用Linux的管理员权限进入保存数据库数据的目录下 直接删除对应目录即可

查看连接情况

语法:

show processlist

【Hello mysql】 数据库库操作,Mysql,数据库,mysql,oracle
从左到右介绍下第一列的含义

  • id : mysql中对于用户的一个标识
  • user:当前用户
  • host :主机
  • db:正在访问的数据库
  • command:显示当前连接执行的命令
  • time:显示线程执行当前状态的时间
  • state:当前连接sql语句的状态
  • info:线程执行的语句

当我们发现自己的数据库运行速度较慢的时候 可以通过该指令来查询访问数据库的用户 如果查出哪个用户不是正常登录的 那么很可能是你的数据库被黑入了文章来源地址https://www.toymoban.com/news/detail-524577.html

到了这里,关于【Hello mysql】 数据库库操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据库问题记录(粗略版)oracle、mysql等主流数据库通用

    1. ORA-00918:未明确定义列 该问题情况大致为:select 所取列名错误、重复等问题。 2. “select * from temp where 1=0; ”的含义 布尔值为FALSE,只返回表结构,不返回数据。 举一反三: select * from temp where 10 , 布尔值为TRUE,返回所有数据记录; select * from temp where 1=0, 暂不清楚是何

    2024年02月07日
    浏览(48)
  • 从 Oracle 到 MySQL 数据库的迁移之旅

    目录 引言 一、前期准备工作 1.搭建新的MySQL数据库 2 .建立相应的数据表 2.1 数据库兼容性分析 2.1.1 字段类型兼容性分析 2.1.2 函数兼容性分析 2.1.3 是否使用存储过程?存储过程的个数?复杂度? 2.1.4 是否使用触发器?个数?使用的场景? 2.2 建表过程中其他需要注意的事项

    2024年04月11日
    浏览(49)
  • Mysql和Oracle数据库死锁查看以及解决

    一、Mysql数据库死锁排查 SQL : SQL: SQL: 示例: 备注:通过查看事务的trx_started(开始时间)来判断该事务的阻塞时间。 SQL  : 备注:线程ID指的是 1.1.3步骤中查询出来的 trx_mysql_thread_id。 SQL : 示例 : 字段解析 : SQL : 示例: SQL : 备注:多个session用逗号隔开。 View Code   造

    2024年01月20日
    浏览(44)
  • 查询Oracle和MySQL数据库中当前所有连接信息

    查询Oracle当前所有连接信息: 查询MySQL当前所有连接信息: 在这两个查询中,我为每个字段添加了中文别名,以提高查询结果的可读性

    2024年02月12日
    浏览(69)
  • 数据库加密AES 适用 Mysql Oracle 以及java

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 备忘录:加密key为:vU4C!~0_HQtlU_p@ 可采用任意长度为16位的字符串 数据库数据需要对敏感数据进行加密,比如手机号,身份证号以及银行卡号等进行加密。需要一套通用的加密方法可以在java项目以及or

    2024年02月15日
    浏览(48)
  • docker安装mysql、clickhouse、oracle等各种数据库汇总

    1:docker 安装mongo数据库并使用 官网:https://www.mongodb.com/docs/manual/ mongo shell教程1:http://c.biancheng.net/mongodb2/connection.html 安装1 :https://www.zhihu.com/question/54602953/answer/3047452434?utm_id=0 安装2:https://www.duidaima.com/Group/Topic/ArchitecturedDesign/9182 使用驱动进行java开发:https://mongodb.github.

    2024年02月10日
    浏览(51)
  • DataGrip连接数据库设置(MySQL、Oracle、SQL Server)

    1.1 配置信息 1.2 测试查询employees库中departments表信息 employees为测试库,具体来源,参考这篇文章 下载并导入MySQL示例数据库employees 。 1.3 测试查询employees库中employees表信息 将SID改为orcl: 3.1 打开DG后新建Data Source-Microsoft SQL Server 下载驱动文件后按图中配置: 3.2 开启Named Pipes和

    2024年02月12日
    浏览(45)
  • 从MySQL迁移到Oracle数据库的详细步骤和方法

    在一些情况下,可能需要将现有的MySQL数据库迁移到Oracle数据库。本文将详细介绍如何进行这一迁移过程,涵盖了备份、转换和导入等关键步骤,以帮助你顺利完成数据库迁移。 在开始迁移之前,务必备份你的MySQL数据库,以便在出现问题时可以还原数据。 确保你已经安装了

    2024年02月08日
    浏览(51)
  • 使用Apache Doris自动同步整个 MySQL/Oracle 数据库进行数据分析

    Flink-Doris-Connector 1.4.0 允许用户一步将包含数千个表的整个数据库(MySQL或Oracle )摄取到Apache Doris(一种实时分析数据库)中。 通过内置的Flink CDC,连接器可以直接将上游源的表模式和数据同步到Apache Doris,这意味着用户不再需要编写DataStream程序或在Doris中预先创建映射表。

    2024年02月09日
    浏览(57)
  • 数据库sql 根据身份证计算年龄段mysql、oracle

    mysql: mysql通过函数可以精确到日 结果: Oracle: oracle只是年份相减,不够精确 结果:

    2024年02月12日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包