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

一:视图

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

时间: 2024-09-28 08:33:50

视图,事务以及存储过程介绍的相关文章

视图、触发器、事务、存储过程、函数

阅读目录 视图  view 触发器  trigger 事务  transaction 存储过程   procedure 函数 流程控制 一: 视图  view 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果集当做表来使用. 使用视图我们可以把查询过程中的临时表摘出来,用视图去实现,这样以后再想操作该临时表的数据时就无需重写复杂的sql了,直接去视图中查找即可,但视图有明显地效率问题,并且视图是存放在数

mysql七:视图、触发器、事务、存储过程、函数

阅读目录 一 视图 二 触发器 三 事务 四 存储过程 五 函数 六 流程控制 一 视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果集当做表来使用. 使用视图我们可以把查询过程中的临时表摘出来,用视图去实现,这样以后再想操作该临时表的数据时就无需重写复杂的sql了,直接去视图中查找即可,但视图有明显地效率问题,并且视图是存放在数据库中的,如果我们程序中使用的sql过分依赖数据库中的视图,即强耦合,

Mysql-自带的一些功能,基本用法(视图,触发器,事务,存储过程,函数,流程控制)

一. 视图 二. 触发器 三. 事务 四. 存储过程 五. 函数 六. 流程控制 一 .视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果集当做表来使用. 使用视图我们可以把查询过程中的临时表摘出来,用视图去实现,这样以后再想操作该临时表的数据时就无需重写复杂的sql了,直接去视图中查找即可,但视图有明显地效率问题,并且视图是存放在数据库中的,如果我们程序中使用的sql过分依赖数据库中的视图,即强耦

MySQL之视图、触发器、事务、存储过程、函数 流程控制

阅读目录 一 视图 二 触发器 三 事务 四 存储过程 五 函数 六 流程控制 MySQL这个软件想将数据处理的所有事情,能够在mysql这个层面上全部都做了,也就是说它想要完成一件事,以后想开发的人,例如想写python程序的人,你就专门的写你自己的python程序,以后凡是关于数据的增删改查,全部都在MySQL里面完成,也就是说它想实现一个数据处理与应用程序的一个完全的解耦和状态,比如说,如果我是个应用程序员,我想要查询数据,我不需要自己写sql语句,只需要调用mysql封装好的一些功能,直

视图,触发器,事务,存储过程,函数与流程控制,索引

一.视图 1.什么是视图 虚拟表:在硬盘中没有的,通过查询在内存中拼接的表 视图:通过查询得到一张虚拟表,保存下来,下次可直接使用 2.为什么要用视图 如果要频繁使用一张虚拟表,可以不用重复查询 3.如何用视图 create view teacher2course as select * from teacher inner join course on teacher.tid = course.teacher_id; 4.删除视图 drop view teacher2course; 5.强调

事务、存储过程——数据统一的守护神

随着系统的增大,数据量的增多,很多时候要实现一个功能都会对数据库中的很多表做操作,这样的话就会面对一个问题--数据的统一和一致性操作,当我们要同时对多个表做有数据变动的操作时(即通常所说的增.删.改操作),一旦出现意外情况或者是由于系统自身的问题或者是外界条件的变化导致某些操作没有完成的话,就会出现数据不完整的情况,这样的错误在系统中是绝对不允许出现的,那么该怎样才能很好地解决这个问题呢?接下来我将为大家介绍两种很常见的解决方案事务和存储过程. 事务 如果涉及到的多个对表的操作是写在系统中的,那

学习日记-----存储过程介绍

SQL Server 存储过程 Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用.当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句.这样就可以提高存储过程的性能. ? 存储过程的概念 存储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行. 存储过程中可以包含逻辑控制语句和数据操纵语句,它可以接受参数.输出参数.返回单个或多个结果集以及返回值. 由于存储

sqlserver中创建包含事务的存储过程

什么是事务 事务时包含1条或多条语句的逻辑单元.事务中的语句是一个整体,要么一起提交,要么一起撤销.事务在提交前可以回滚,一旦提交就不能撤销修改了,是永久性的修改. 为什么使用事务 可以例举生活中的例子,比如银行转账:A向B转100万.程序的执行顺序:1.A账户减掉100万 2.B账户增加100万.若是都成功执行倒没什么,假设1成功执行,2执行失败,就会出问题.运用事务就不会出现这种问题,因为只要其中有一步操作失败,事务就会回滚,之前的所有操作将会被撤销. 事务的基本控制语句 1.BEGIN T

sql事务和存储过程

一.sql事务 1.什么是事务:事务是一个不可分割的工作逻辑单元,在数据库系统上执行并发操作时事务是做为最小的控制单元来使用的.他包含的所有数据库操作命令作为一个整体一起向系提交或撤消,这一组数据库操作命令要么都执行,要么都不执行. 2.事务的语句开始事物:BEGIN TRANSACTION提交事物:COMMIT TRANSACTION回滚事务:ROLLBACK TRANSACTION 3.事务的4个特性  ①原子性(Atomicity):事务中的所有元素作为一个整体提交或回滚,是不可折分的,事