视图,事务以及存储过程介绍

本文详细介绍了SQL中的视图、事务和存储过程的概念及应用。视图作为虚拟表,能增强数据安全性并简化SQL操作。事务确保了数据库操作的原子性和一致性,而存储过程则可以实现复杂的业务逻辑处理。

一:视图

        1:定义:视图本质上是一张虚拟的表,它的数据来自select语句。

        2:创建视图的语句:

              create view 视图名字 as select *from 表名;

        3:作用:

              原表安全,隐藏部分数据,开放指定的数据;因为视图可以将查询结果保存,所以可以用视图来减少书写sql的次数。

        4:特点:

              ①:每次对视图进行的查询,其实都是再次执行了as后面的查询语句

              ②:可以对视图进行修改,修改会同步到原表

              ③:视图是永久存储的,存储的不是数据,而是一条 as sql 语句

              

二:事务

        1:定义:事务就是一堆sql语句的集合,它们是原子性的,要么全部执行,要么都不执行。

        2:事务的特性:

              ①:原子性:事务是一个整体,不可分割

              ②:隔离性:事务之间要相互隔离,为了维护数据的完整性

                     四中隔离级别:可串行化,可重复读(默认),读已提交,读未提交

              ③:一致性:当事务执行后,所有的数据都是完整的(外键约束,非空约束)

              ④:持久性:一旦提交了事务,数据就永久保存

        mysql这个客户端默认开启自动提交,一条sql语句就是一个单独的事务;

        pymysql默认是不自动提交,需要手动commit,意思是默认就开启了事务。

        start transaction;   开启一个事务

        commit   提交事务

        rollback   回滚事务

 

三:存储过程

        1:定义:存储过程实际上是一个mysql中的类似函数的东西,我们可以用它实现一些逻辑处理

                        特点:里面可以包含流程控制语句和普通的sql语句

        2:作用:可以将程序业务逻辑放到mysql中来处理,这样可以降低网络访问次数,从而提高程序效率。

        3:语法:

                     create  procedure  过程的名称  ({in,out,inout}  数据类型  参数名称)

                     begin

                             具体的sql代码

                     end

                     参数前面需要指定参数的作用:

                     in   表示该参数用于传入数据

                     out   表示该参数用于返回数据

                     inout   既可传入,也可返回

 

转载于:https://www.cnblogs.com/duanxiangyang/p/9668861.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值