MySql复习笔记03(小滴课堂) 事务,视图,触发器,存储过程

mysql 必备核心知识之事务的详细解析:

创建一个数据库表:

添加数据并开启事务。

添加数据并查询。

登录另一台服务器发现查不到这个表中的数据。

这是因为事务开启了,但是没有提交,只是把数据存到了内存中,还没有写入磁盘里,所以其它服务器看不到数据。

提交事务。

这样其它服务器也能查询到数据了。

再重新开启事务删除一条数据。

因为没有提交另一个服务器里还是能看到数据。

因为删除的事务还没有执行完,所以数据还是能读出来的。

提交这个事务:

再差就查不到数据了。

开启事务再提交一条数据。

没有提交,另一台服务器是查不到数据的。

当出现数据插入有误时,可以使用rollback进行回滚。

如果数据库里这个配置是on不开启的。

我们不使用begin开启事务。添加了一条数据。

在另一个服务器里也能看到。因为开启了,事务会自动提交,如果为off。则是不自动启动事务。

可以把这个配置设置为off。

删除一条数据。

另一台服务器里还能查到数据。

事务提交之后就不见了。

这种方法事务临时生效,如果退出服务器重新登录,就不起作用了。

详细讲解视图的优缺点以及应用

查看数据库引擎:

修改引擎类型。

MyISAM引擎对事务不支持,我们要是想使用事务要使用InnoDB引擎。

通过这个基表来创建视图。

我们屏蔽掉时间和薪水,创建了一个视图。

show tables的时候,我们的视图也会被显示出来。

我们也可也看到视图是如何被创建出来的。

也可以查到视图中的数据。

实际中创建视图会是很复杂的,涉及到各种联表。

修改基表中的数据,视图中的数据也会跟着改变。

mysql 的触发器介绍(使用不多,了解即可)

创员工表:

可以看到我们的表结构。

这个命令可以作为以自定义符号结束sql语句。

创建触发器:

之前有员工表:

我们模拟的是员工迟到扣钱的场景。

查看触发器:

向迟到表中插入一条数据:

我们发现猪八戒的钱确实减少了100;

删除触发器:

介绍什么是存储过程(很少使用,后面的分库分表几乎不可使用,简单了解即可)

创建一个简单点的存储过程:

我的表里只有一个数据,这里只是为了学习举例,真正使用也不会是这么简单的一条查询语句去使用存储过程。

查看存储过程:

给变量赋值:

调用存储过程:

删除存储过程:

我们再创建一个自定义声明变量的:

调用:

相关推荐

  1. MySQL-笔记-09.存储过程触发器的使用

    2023-12-14 16:50:02       33 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-14 16:50:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-14 16:50:02       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-14 16:50:02       82 阅读
  4. Python语言-面向对象

    2023-12-14 16:50:02       91 阅读

热门阅读

  1. Linux - 内存 - memblock 分配器

    2023-12-14 16:50:02       62 阅读
  2. Linux 创建一个service并设置开机启动

    2023-12-14 16:50:02       68 阅读
  3. Springboot+Libreoffice集成开发

    2023-12-14 16:50:02       68 阅读
  4. springboot_3.2_freemark_基础环境配置

    2023-12-14 16:50:02       51 阅读
  5. Cmake

    2023-12-14 16:50:02       51 阅读
  6. LeetCode-23. 合并 K 个升序链表

    2023-12-14 16:50:02       44 阅读
  7. Docker 打包容器成镜像

    2023-12-14 16:50:02       45 阅读
  8. 基于libevent使用c语言实现http服务端的基础框架

    2023-12-14 16:50:02       59 阅读