代码改变世界

随笔分类 -  存储过程

SQL 有父标识的 递归查询

2014-08-28 16:01 by 无抿屎的牛牛, 293 阅读, 收藏,
摘要: 递归查询,临时表的高级应用WITH tempAS(--父项SELECT * FROM Ar_Area WHERE Ar_Parent = 1UNION ALL--递归结果集中的下级SELECT m.* FROM Ar_Area AS mINNER JOIN temp AS child ON m.Ar... 阅读全文

存储过程删除主从表,回滚操作

2013-11-06 10:46 by 无抿屎的牛牛, 474 阅读, 收藏,
摘要: 用存储过程操作删除主从表记录,操作成功提交事务,失败回滚操作,避免删除异常误删数据。ALTER PROCEDURE [dbo].[CopyCustomerDelete] /* ( @parameter1 int = 5, @parameter2 datatype OUTPUT ) */ ( @FromCustomerID int, @CustomerType int, @Result int output )AS /* SET NOCOUNT ON */BEGIN TRANSACTION... 阅读全文

存储过程 删除两表关联的数据记录

2013-11-01 17:25 by 无抿屎的牛牛, 414 阅读, 收藏,
摘要: 表Device为设备表(主表),如下图表Rxparam为参数表(从表),如下图该存储过程是查找Device表中CustomerID为62的所有设备Rxparam表对应的记录都删除。CREATE PROCEDURE CopyCustomerInfo( @FromCustomerID int, @ToCustomerID int, @CustomerType int)ASBEGIN TRANSACTION DECLARE @Error int SET @Error=0 DECLARE @DeviceCount int SET @DeviceCount=0BEG... 阅读全文

sql存储过程通过ID删除两表中的数据。

2013-10-31 17:44 by 无抿屎的牛牛, 291 阅读, 收藏,
摘要: CREATE OR REPLACE PROCEDURE del_p --建立名为del_p 的过程IS CURSOR get_abid --简历名为get_abid的cursor 用来存放a表的id和b表的id. IS SELECT a.ID aid, b.ID bid FROM userinfo a INNER JOIN users b ON a.username = b.username; --将a表的id命名为aid,b表的id命名为bidBEGIN FOR rec_abid IN get_... 阅读全文