SQL存储过程,使用事务(try catch),游标
CREATE proc [dbo].[Sys_Rebate_Equity] AS
declare @fMemberID varchar(50)--用户ID
declare @Rebate decimal(18,2)--总股权数 BEGIN
begin try
Begin Transaction --开始事务
DECLARE cursor1 CURSOR for --定义游标cursor1
select fMemberID,sum(fNumber) as 'fNumber' from BP_Equity where fNumber>0 group by fMemberID --使用游标的对象
open cursor1 --打开游标
fetch next from cursor1 into @fMemberID,@Rebate --将游标向下移1行,获取的数据放入之前定义的变量@fMemberID,@Rebate中
while @@FETCH_STATUS=0 --判断是否成功获取数据
begin
select 1 --进行相应处理
fetch next from cursor1 into @id --将游标向下移1行
end
close cursor1 --关闭游标
deallocate cursor1 --删除游标引用
select 888
Commit Transaction --提交事务
End Try
Begin Catch
if @@trancount > 0 ROLLBACK TRANSACTION --回滚事务
Select 8888
End Catch END
SQL存储过程,使用事务(try catch),游标的更多相关文章
- SQL 存储过程 触发器 事务
一.存储过程 存储过程:就像函数一样的会保存在:数据库中-->可编程性 --> 存储过程 创建存储过程:create proc JiaFa --存储关键字proc @a int, ...
- SQL 存储过程中事务回滚
在事务语句最前面加上 set xact_abort on GO SET QUOTED_IDENTIFIER OFF GO ALTER PROCEDURE [dbo].[test] @a int, @b ...
- SQL 存储过程加事务的使用
create proc USP_CUTTING_TATABLET_PULL_FINISH ( @name NVARCHAR(20) ) as SET XACT_ABORT ON--设置全盘回滚 BEG ...
- SQL数据库—<7>事务、异常和游标
事务 一.什么是事务能够保证数据的一致性的代码控制,要么执行提交,要么滚回事务的初始状态 二.事务的四大特性:ACIDA:原子性-------事务不可拆开,要么执行要么回滚无中间状态C:一致性---- ...
- SQL 存储过程入门(事务)(四)
SQL 存储过程入门(事务)(四) 本篇我们来讲一下事务处理技术. 为什么要使用事务呢,事务有什么用呢,举个例子. 假设我们现在有个业务,当做成功某件事情的时候要向2张表中插入数据,A表,B表,我 ...
- SQL 存储过程入门(事务)
本篇我们来讲一下事务处理技术. 为什么要使用事务呢,事务有什么用呢,举个例子. 假设我们现在有个业务,当做成功某件事情的时候要向2张表中插入数据,A表,B表,我们插入的顺序是先插入A,再插入B表,如果 ...
- sql之视图、触发器、函数、存储过程、事务
视图 # 视图也是一张表,但在data文件里只有表结构,没有表数据 # 不建议使用,扩展性差,程序需改变时,依赖的视图也要改变 # 视图牵涉到多张表时,视图中的记录不能修改. create view ...
- sql server 存储过程,事务
1.存储过程,事务 CREATE PROCEDURE Proc_ceshi @id int, ), @returnval int output AS BEGIN SET NOCOUNT ON; Set ...
- SQL存储过程+游标 循环批量()操作数据
本人收集的,挺有用的 1. 利用游标循环更新.删除MemberAccount表中的数据 DECLARE My_Cursor CURSOR --定义游标 FOR (SELECT * FROM dbo.M ...
- 06 数据库入门学习-视图、sql注入、事务、存储过程
一.视图 1.什么是视图 视图本质是一张虚拟的表 2.为什么要用 为了原表的安全 只要有两大功能 1.隐藏部分数据,开放指定数据 2.视图可以将查询结果保存,减少sql语句的次数 特点: 1.视图使用 ...
随机推荐
- Thread.join简单介绍
百度了一下,终于明白了.这个解释最简单: 前提:join()方法肯定是被某个线程调用的. A线程正在执行,突然执行的时候碰到了B.join(), 那么,A线程就必须要等到B线程执行完之后才能执行. ...
- iscsi 怎么搞
I recently reinstalled the software on my NAS (open media vault) and tidied up the host name etc. As ...
- Spring IoC容器总结(未完)
在面向对象系统中,对象封装了数据和对数据的处理,对象的依赖关系常常体现在对数据和方法的依赖上.这些依赖关系可以通过把对象的依赖注入交给框架或IOC容器来完成,这种从具体对象手中交出控制的做法是非常有价 ...
- [MySQL] 号称永久解决了复制延迟问题的并行复制,MySQL5.7
一.缘由: 某天看到主从复制延时的告警有点频繁,就想着是不是彻底可以解决一下. 一般主从复制,有三个线程参与,都是单线程:Binlog Dump(主) ----->IO Thread (从) - ...
- mysql connector 和 sqlserver ado.net 的区别
1,虽然同样是实现了IDataReader接口,但是 对于 MySql.Data.MySqlClient.MySqlDataReader 和 System.Data.SqlClient.SqlDat ...
- Software Development Principle
Every great piece of software begins with customer's big idea. As a professional softeware developer ...
- AMap地图加载完成事件
<!doctype html> <html> <head> <meta charset="utf-8"> <meta http ...
- ActiveMQ与WebSocket的结合应用
前段时间无意之中看到了WebSocket这样东西,发现自己真的是火星了.早在11年就有的东西,一直都不知道. 研究了一番之后感觉还是比较好用的. 我很少做Socket开发,但是曾经由于项目的原因,用过 ...
- C#实现队列
队列(Queue)是插入操作限定在表的尾部而其他操作限定在表的头部进行的线性表.把进行插入操作的表尾称为队尾(Rear).把进行其他操作的头部称为队头(Front). 队列的操作使按照先进先出后进后出 ...
- Jquery实现兼容各大浏览器的Enter回车切换输入焦点的方法
<script type="text/javascript"> $('input:text:first').focus(); document.onkeydown = ...