IDEA对数据库、表、记录的(增删改查可视化操作)、数据库安全性问题的演示
对数据库的增删改查
新增数据库


修改数据库


删除数据库

对表的增删改查
新增表



修改表


删除表

对记录的增删改查

数据库安全性问题的演示
演示脏读
一个事物里面读到了另外一个事物没有提交的数据: read uncommitted
1.开启A,B窗口
2.分别查询A,B的隔离级别
select @@tx_isolation;
3.设置A窗口的隔离级别为read uncommitted(读未提交)
set session transaction isolation level read uncommitted;
4.A,B都开启事物
5.在B中zs向ls转账100,事务不提交
6.在A中查询账户---->zs:900,ls:1100 脏读
解决脏读---演示不可重复读
不可重复读: 在一个事物里面,同一条语句,两次查询的结果不一致.
1.开启A,B窗口
2.分别查询A,B的隔离级别
select @@tx_isolation;
3.设置A窗口的隔离级别为Read committed(读已提交)
set session transaction isolation level Read committed;
4.A,B都开启事物
5.在B中张三向李四转账100,事物不提交
6.在A中查询账户(避免脏读发生)
7.B中提交事物
8.在A中查询账户(两次查询的结果不一致,不可重复读发生)
解决不可重复读
1.开启A,B窗口
2.分别查询A,B的隔离级别
select @@tx_isolation
3.设置A窗口的隔离级别为Repeatable read
set session transaction isolation level Repeatable read;
4.A,B都开启事物
5.在B中张三向李四转账100,事物不提交
6.A中查询账户--->解决脏读
7.B中提交
8.A中查询账户----->解决不可重复读
9.A中结束事物,再重新查询
演示隔离级别Serializable
1.开启A,B窗口
2.分别查询A,B的隔离级别
select @@tx_isolation
3.设置A窗口的隔离级别为Serializable
set session transaction isolation level Serializable;
4.A,B都开始事务
5.B中向account账户插入一条数据,不提交
6.A中查询---没有数据显示
7.在B中结束事务
8.A中立马出现查询结果
IDEA对数据库、表、记录的(增删改查可视化操作)、数据库安全性问题的演示的更多相关文章
- 数据库Dao层编增删改查写,数据库事务,数据库升级
数据库事务 有两个特点 1.安全性 情景:正常的转账行为,这个时候如果出现停电等异常,已经扣钱但是没有加钱:这个时候就可用数据库事务解决问题 2.高效性: 使用数据库事务添加享受同数量的数据,对比耗时 ...
- 关于利用PHP访问MySql数据库的逻辑操作以及增删改查实例操作
PHP访问MySql数据库 <?php //造连接对象$db = new MySQLi("localhost","root","",& ...
- 【Android】数据库的简单应用——增删改查的操作
还记得getReadableDatabase()和getWritableDatabase()方法吧?在调用它们的时候会返回一个SQLiteDatabase对象,借助这个对象就可以进行CURD(Crea ...
- SQL server数据库的链接以及增删改查的操作
1.添加引用using System.Data;using System.Data.SqlData;2.建立于数据库的连接,建议将它做成一个方法,方便多次利用.string sqlconnection ...
- 使用JDBC分别利用Statement和PreparedStatement来对MySQL数据库进行简单的增删改查以及SQL注入的原理
一.MySQL数据库的下载及安装 https://www.mysql.com/ 点击DOWNLOADS,拉到页面底部,找到MySQL Community(GPL)Downloads,点击 选择下图中的 ...
- Python操作MySQL数据库完成简易的增删改查功能
说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家! 目录 一丶项目介绍 二丶效果展示 三丶数据准备 四丶代码实现 五丶完整代码 一丶项目介绍 1.叙述 博主闲暇之余花了10个小时写的 ...
- Django项目的创建与介绍.应用的创建与介绍.启动项目.pycharm创建启动项目.生命周期.三件套.静态文件.请求及数据.配置Mysql完成数据迁移.单表ORM记录的增删改查
一.Django项目的创建与介绍 ''' 安装Django #在cmd中输入pip3 #出现这个错误Fatal error in launcher: Unable to create process ...
- mysql对库,表及记录的增删改查
破解密码 #1.关闭mysqlnet stop mysqlmysql还在运行时需要输入命令关闭,也可以手动去服务关闭 #2.重新启动mysqld --skip-grant-tables跳过权限 #3m ...
- Django框架之第二篇--app注册、静态文件配置、form表单提交、pycharm连接数据库、django使用mysql数据库、表字段的增删改查、表数据的增删改查
本节知识点大致为:静态文件配置.form表单提交数据后端如何获取.request方法.pycharm连接数据库,django使用mysql数据库.表字段的增删改查.表数据的增删改查 一.创建app,创 ...
随机推荐
- ToString()格式化输出
C 货币 2.5.ToString("C") ¥2.50 D 十进制数 25.ToString("D5") 00025 E 科学型 25000.ToString ...
- Linux 的常用基本命令
一.Linux 的常用基本命令..................................................................................... ...
- 「Python实用秘技10」深度比较Python对象间差异
本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章「Python实用秘技」的第10 ...
- Vim基础用法,最常用、最实用的命令介绍(保姆级教程)
配置文件设置 set number (设置行号) set nocompatible (设置不兼容vi模式,不设置会导致许多vim特性被禁用) set clipboard=unnamed (设置普通的复 ...
- 树莓派4B无屏幕连接Wi-Fi/启用ssh/创建用户
前边总得说点什么 最近每次在Win10上写代码需要启动Redis,残血Redis For Windows有卡死系统的bug.由于主机内存不大够用(已经扩到顶了),开虚拟机运行Redis更别提了..想起 ...
- 三道MySQL联合索引面试题,淘汰80%的面试者,你能答对几道
众所周知MySQL联合索引遵循最左前缀匹配原则,在少数情况下也会不遵循(有兴趣,可以翻一下上篇文章). 创建联合索引的时候,建议优先把区分度高的字段放在第一列. 至于怎么统计区分度,可以按照下面这种方 ...
- mustache.js常见用法
一.mustache基于JS模板引擎,能较为快捷和简单得实现数据得渲染 用法: 1.CDN引入mustache.js,以下是4.0.1版本,有需要可以去github上查询其他版本的代码. (funct ...
- CF1528C Trees of Tranquillity(图论,数据结构)
题面 有两棵 n n n 个点的有根树 T 1 T_1 T1, T 2 T_2 T2,根是 1 1 1 ,共用编号 1 1 1~ n n n.求最大的点集 S S S 满足每个点在 T 1 T_1 ...
- java数组---初始化
public class ArrayDemo { public static void main(String[] args) { int[] a={1,2,3,4,5,6,7,8,9}; //静态初 ...
- Configuration的学习
创建 //1.创建,调用的空惨 Configuration conf = new Configuration(); 加载主配置 //2.读取主配置文件==>如果是空参方法则自动加载sec下的re ...