MySQL数据库查缺补漏——基础篇

MySQL数据库查缺补漏-基础篇

基础篇

net start mysql80[服务名]

net stop mysql80

create database pshdhx default charset utf8mb4;

为什么不使用utf8?因为其字符占用三个字节,有四个字节的字符,所有需要设置为utf8mb4;

数值类型:

在这里插入图片描述

字符串类型:

在这里插入图片描述

日期类型:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

用户管理

use mysql;

create user ‘pshdhx’@‘localhost’ identified by ‘123456’

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

alter user ‘pshdhx’@‘%’ identified with mysql_native_password by ‘123456789’;

用户权限控制:

在这里插入图片描述

查询权限:

show grants for ‘pshdhx’@‘localhost’;

授予权限

grant all on db1.* to ‘pshdhx’@‘localhost’

撤销权限:

revoke all on db1.* from ‘pshdhx’@‘localhost’

MySQL函数

字符串函数:

在这里插入图片描述

数值函数:

在这里插入图片描述

日期函数:

在这里插入图片描述

流程函数:

在这里插入图片描述

MySQL约束

在这里插入图片描述

alter table emp add constraint fk_emp_detp_id foreign key (dept_id) references dept(id);

alter table emp drop foreign key fk_emp_dept_id;

cascade:级联删除外键。

alter table emp add constraint fk_emp_detp_id foreign key (dept_id) references dept(id) on update cascasd on delete cascade;

set null:设置 null

多表查询

内连接

​ SELECT * FROM emp ,dept where emp.emp_id = dept.dept_id and dept.dept_id = 2;

​ SELECT * FROM emp INNER JOIN dept on emp.emp_id = dept.dept_id;

​ 注意:如果emp的id为空,则该条记录不展示,取的是交集

外连接

​ 左外连接

​ 右外连接

​ 通常,右外连接可以调换顺序可以改成左外连接

自连接

​ 注意都要起别名

联合查询

union 【合并后去重】,union all 【不去重】

子查询

​ 单行子查询:=

​ select * from emp where (salary,managerid) = (12500,1);

​ select * from emp where (salary,managerid) = (select salary,managerid from emp where name=‘pshdhx’);

​ 多行多列子查询:in

事务

操作的集合。

查看事务的提交方式:

​ select @@autocommit; 为1就是自动提交。为0就是手动提交。

​ set @@autocommit=0; 设置手动提交。

事务操作:

​ 开启事务:start transaction 或者是begin

​ 提交事务:commit

​ 回滚事务:rollback

事务四大特性:

​ 1、原子性(Atomicity):事务是不可分割的最小操作单元,要么全部成功,要么全失败。

​ 2、 一致性(Consistence):事务完成时,必须使所有的数据都保持一致。

​ 3、隔离性(Isolation):数据库提供的隔离机制,保证事务不受外部并发操作影响的独立环境下运行。

​ 4、持久性(Durability):事务一旦提交或回滚,它对数据库中的数据的改变是永久的。【持久化到data目录下】

并发事务问题:

​ 1、脏读:一个事务读取到另外一个事务没有提交的数据。

​ 2、不可重复度【修改】:一个事务先后读取同一条记录,但是两次读取的数据不同。

​ 3、幻读【新增】:一个事务按照条件查询数据时,没有对应的数据行。但是在插入数据时,又发现这行数据已经存在。

事务隔离级别:

脏读不可重复度幻读
读未提交
读已提交[Oracle默认]
可重复度[Mysql默认]
串行化【加锁】

select @@Transactoin_isolation

set [session | global] transaction isolation level {read uncommitted | read committed | repeatable read| serializable}

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringCloud Ribbon--负载均衡 原理及应用实例

😀前言 本篇博文是关于SpringCloud Ribbon的基本介绍,希望你能够喜欢 🏠个人主页:晨犀主页 🧑个人简介:大家好,我是晨犀,希望我的文章可以帮助到大家,您的满意是我的动力…

​​​​MyBatis友人帐之基础入门

一、简介 1.1什么是MyBatis MyBatis 是一个开源的、轻量级的数据持久层框架,它可以简化 JDBC 的操作,让开发者只需要关注 SQL 语句本身,而不用处理加载驱动、创建连接、创建语句等繁琐的过程。 MyBatis 支持自定义 SQL、存储过程和高级映射&…

Kotlin中函数的基本用法以及函数类型

函数的基本用法 1、函数的基本格式 2、函数的缺省值 可以为函数设置指定的初始值&#xff0c;而不必要传入值 private fun fix(name: String,age: Int 2){println(name age) }fun main(args: Array<String>) {fix("张三") }输出结果为&#xff1a;张三2 …

论文笔记 DETR

detr 摘要和引言 2020论文facebook不需要proposal&#xff0c;不需要基于anchor的先验知识(比如预训练的模型)&#xff0c;也不需要NMS进行筛选&#xff0c;直接端到端不需要后处理利用transformer的全局建模能力&#xff0c;看成集合预测问题&#xff0c;不会输出很多冗余的…

浅谈DBT的一些不足之处

DBT的好处是显而易见的&#xff0c;它支持连接多达41种数据库。而且不需要你写DDL语句&#xff0c;只要写select语句&#xff0c;DBT会自动帮你推断schema结构&#xff0c;将数据写入到数据库中&#xff1a; 但是使用了一段时间之后&#xff0c;发现DBT也存在着如下这些不足之处…

竞赛 基于机器学习与大数据的糖尿病预测

文章目录 1 前言1 课题背景2 数据导入处理3 数据可视化分析4 特征选择4.1 通过相关性进行筛选4.2 多重共线性4.3 RFE&#xff08;递归特征消除法&#xff09;4.4 正则化 5 机器学习模型建立与评价5.1 评价方式的选择5.2 模型的建立与评价5.3 模型参数调优5.4 将调参过后的模型重…

JumpServer未授权访问漏洞 CVE-2023-42442

JumpServer未授权访问漏洞 CVE-2023-42442 一、漏洞描述二、漏洞影响三、网络测绘四、漏洞复现poc通过burp发送请求包小龙POC检测 五、修复建议 免责声明&#xff1a;请勿利用文章内的相关技术从事非法测试&#xff0c;由于传播、利用此文所提供的信息或者工具而造成的任何直接…

Redis代码实践总结

一、背景&#xff1a; redis从安装到实践&#xff0c;做一些具体的记录。 1.1 Redis和 RedisStack和Redis Enterprise redis简介 Redis 是一种开源&#xff08;BSD 许可&#xff09;内存中数据结构存储&#xff0c;用作数据库、缓存、消息代理和流引擎。 Redis 提供数据结构…

(JavaEE)(多线程案例)线程池 (简单介绍了工厂模式)(含经典面试题ThreadPoolExector构造方法)

线程诞生的意义&#xff0c;是因为进程的创建/销毁&#xff0c;太重了&#xff08;比较慢&#xff09;&#xff0c;虽然和进程比&#xff0c;线程更快了&#xff0c;但是如果进一步提高线程创建销毁的频率&#xff0c;线程的开销就不能忽视了。 这时候我们就要找一些其他的办法…

pte初步认识学习

我们的时间的确很少&#xff0c;但是我们每天都乐意将珍贵的时间浪费在大量毫无意义的事情上 目录 pte介绍 PTE口语评分规则 pte架构 计算机科学23 QS排名 《芭比》 pte介绍 PTE口语评分规则 有抑扬顿挫 对于连读 不能回读 native pte对于个别单词没有读好&#xff0c…

【探索C语言中VS调试技巧】:提高效率和准确性

文章目录 前言1. 什么是bug&#xff1f;2. 调试是什么&#xff1f;有多重要&#xff1f;2.1 调试是什么&#xff1f;2.2 调试的基本步骤2.3 Debug和Release的介绍 3. Windows环境调试介绍3.1 调试环境的准备3.2 学会快捷键3.3 调试的时候查看程序当前信息3.3.1 查看临时变量的值…

C语言生成随机数、C++11按分布生成随机数学习

C语言生成随机数 如果只要产生随机数而不需要设定范围的话&#xff0c;只要用rand()就可以&#xff1b;rand()会返回一随机数值, 范围在0至RAND_MAX 间&#xff1b;RAND_MAX定义在stdlib.h, 其值为2147483647&#xff1b; 如果想要获取在一定范围内的数的话&#xff0c;直接做…

【数据分享】2023年全国地级市点位数据(免费获取\shp格式\excel格式)

地级市点位数据是我们各项研究中经常使用到的数据&#xff0c;在之前的文章中我们分享过2022年度的地级市及以上城市的点位数据&#xff08;可查看之前的文章获悉详情&#xff09;。本次我们带来的是2023年度的全国范围的地级市及以上城市的点位数据&#xff0c;点位位置为市政…

大数据Flink(八十四):SQL语法的DML:窗口聚合

文章目录 SQL语法的DML:窗口聚合 一、滚动窗口(TUMBLE)

[激光原理与应用-68]:如何消除50Hz工频干扰和差分信号应对工频干扰

目录 一、什么工频干扰 1.1 什么工频干扰 1.2 工频干扰的幅度 1.3 工频干扰如何进入设备 1.4 工频干扰的负面影响 二、如何消除工频干扰 2.1 要消除工频干扰&#xff0c;可以考虑以下方法&#xff1a; 2.2 要具体消除工频干扰&#xff0c;可以采取以下措施 2.3 使用差…

React(react18)中组件通信04——redux入门

React&#xff08;react18&#xff09;中组件通信04——redux入门 1. 前言1.1 React中组件通信的其他方式1.2 介绍redux1.2.1 参考官网1.2.2 redux原理图1.2.3 redux基础介绍1.2.3.1 action1.2.3.2 store1.2.3.3 reducer 1.3 安装redux 2. redux入门例子3. redux入门例子——优…

Mybatis 中 SQL 注入攻击的 3 种方式

SQL注入漏洞作为WEB安全的最常见的漏洞之一&#xff0c;在java中随着预编译与各种ORM框架的使用&#xff0c;注入问题也越来越少。往往对Java Web应用的多个框架组合而心生畏惧&#xff0c;不知如何下手&#xff0c;希望通过Mybatis框架使用不当导致的SQL注入问题为例&#xff…

[Qt/C/C++]JSON和程序发布

文章摘于 爱编程的大丙 文章目录 1. JSON1.1 Json数组1.2 Json对象1.3 注意事项 2. Qt中JSON操作2.1 QJsonValue2.2 QJsonObject2.3 QJsonArray2.4 QJsonDocument2.5 举例2.5.1 写文件2.5.2 读文件 3. cjson库的使用3.1 cJSON结构体3.2 cJson API3.2.1 数据的封装3.2.2 Json对…

Kotlin File FileTreeWalk walkTopDown onEnter onLeave

Kotlin File FileTreeWalk walkTopDown onEnter onLeave Python遍历文件目录os.walk_for subfolder in subfolders: print(foldername/_zhangphil的博客-CSDN博客import osfor folderName, subfolders, filenames in os.walk(rD:\code\vs_code): print(当前文件夹: folderName…

踩坑:Invalid character found in method name. HTTP method names must be tokens

一、原因 在进行本地小程序与服务端请求时,由于加了签名认证,访问接口时报错 Spring boot端 小程序端 二、解决方案 2.1 更改访问路径 将https:更换成http: 示例:https://localhost:8080 改为 http://localhost:8080 2.2其他原因 ssl证书到期了Tomcat的header缓冲区大小不…