MS SQL Server2005存储过程、游标、游标嵌套综合例子:
放在这里备忘》》》
create proc decisionPathRefSchemes
as
begin
DECLARE @pathId varchar(64)
DECLARE @schemeId varchar(64)
DECLARE @flag integer
DECLARE @seq integer
DECLARE mycursor cursor
for select id from imps_pd_decision_path where surfaceType = '沥青路面' and roadGrade = '高速、一级、二级'
DECLARE mycursor2 cursor
for select id from imps_pd_decision_scheme
set @seq = 10000
open mycursor
fetch next from mycursor into @pathId
while @@fetch_status=0
begin
set @flag = 0
select @flag=1 from imps_pd_path_ref_scheme where pathId=@pathId
print @pathId
print @flag
if @flag = 0
begin
/*使用游标嵌套*/
open mycursor2
fetch next from mycursor2 into @schemeId
while @@fetch_status=0
begin
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,@schemeId)
set @seq = @seq + 1
fetch next from mycursor2 into @schemeId
end
close mycursor2
/*
不用游标时:
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6cd457b0001')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6ce234a0003')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6cf087c0005')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6cf4b230006')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6cf95aa0007')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6cfd5920008')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d023160009')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d06b4b000a')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d2c87a000b')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d2f900000c')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d32cf1000d')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d36bef000e')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d3ce44000f')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d419b50010')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d541bc0013')
set @seq = @seq + 1
insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52afa3280012afae7baaa0001')
set @seq = @seq + 1
*/
end
fetch next from mycursor into @pathId
end
/* 嵌套的游标先销毁*/
deallocate mycursor2
close mycursor
/* 外层游标后销毁*/
deallocate mycursor
end
/* 执行存储过程*/
--exec decisionPathRefSchemes
/* 删除存储过程*/
--drop proc decisionPathRefSchemes
分享到:
相关推荐
一个存储过程的示例,简单展示了如下...3,游标嵌套。 4,对于嵌套游标STATUS的互相影响问题的解决办法《注意001和002的注释位置,fetch的位置》。 对于初学者,存储过程重要的几个方面,都有展示到,大虾们请忽略。
SQL对游标嵌套的应用 学校宿舍管理系统(实际上是个子系统): 包括以下几个表: 楼栋表;楼层表;房间表;学员住宿表 脚本如下: --楼栋表
下面是一个订单取消的含2个游标的存储过程 set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go ALTER PROCEDURE [dbo].[CancelOrderBySystem] AS BEGIN declare /*声明变量*/ @Status varchar(100), –状态 ...
完整的SQL SERVER双层游标嵌套示例
本书是Inside Microsoft SQL Server 2005系列四本著作中的一本。它详细介绍了T-SQL的内部体系结构,包含了非常全面的编程参考,提供了使用Transact-SQL(T-SQL)的专家级指导,囊括了非常全面的编程参考,揭示了基于...
mysql存储过程 多个游标循环(依次执行,非嵌套循环)REPEAT循环。有需要的可自行下载。
BEGIN -- 声明变量 ... /** 声明游标,并将查询结果存到游标中 **/ DECLARE c_borrow CURSOR FOR SELECT ID from rocky_borrow WHERE BORROWTYPE = 2 AND PUBLISH_TIME >= UNIX_TIMESTAMP('2014-
4.3 通过存储过程配置SQL Server 4.3.1 使用SQL Server Management Studio查询 4.3.2 执行查询和改变设置 4.3.3 检查和设置配置参数 4.3.4 使用ALTER DATABASE改变设置 第Ⅱ部分 SQL Server 2008的系统管理 第5章 ...
4.3 通过存储过程配置SQL Server 4.3.1 使用SQL Server Management Studio查询 4.3.2 执行查询和改变设置 4.3.3 检查和设置配置参数 4.3.4 使用ALTER DATABASE改变设置 第Ⅱ部分 SQL Server 2008的系统管理 第5章 ...
-----------------------------------带游标参数存储过程------------------------------------- if (object_id('proc_cursor', 'P') is not null) drop proc proc_cursor go create proc proc_cursor @cur cursor...
4.3 通过存储过程配置SQL Server 4.3.1 使用SQL Server Management Studio查询 4.3.2 执行查询和改变设置 4.3.3 检查和设置配置参数 4.3.4 使用ALTER DATABASE改变设置 第Ⅱ部分 SQL Server 2008的系统管理 第5章 ...
书名: SQLServer2008查询性能优化 作者: 弗里奇(Grant Fritchey) 出版社: 人民邮电出版社 出版日期: 2010年8月1日 ISBN: 9787115230294 编辑推荐 《SQL Server 2008查询性能优化》为你提供了处理查询性能所...
书名: SQLServer2008查询性能优化 作者: 弗里奇(Grant Fritchey) 出版社: 人民邮电出版社 出版日期: 2010年8月1日 ISBN: 9787115230294 编辑推荐 《SQL Server 2008查询性能优化》为你提供了处理查询性能所...
4.3 通过存储过程配置SQL Server 88 4.3.1 使用SQL Server Management Studio查询 88 4.3.2 执行查询和改变设置 90 4.3.3 检查和设置配置参数 91 4.3.4 使用ALTER DATABASE改变设置 95 第Ⅱ部分 SQL ...
4.3 通过存储过程配置SQL Server 88 4.3.1 使用SQL Server Management Studio查询 88 4.3.2 执行查询和改变设置 90 4.3.3 检查和设置配置参数 91 4.3.4 使用ALTER DATABASE改变设置 95 第Ⅱ部分 SQL ...
在PL/SQL中可以使用游标处理数据。通过使用游标可以大大提高PL/SQL程序对数据处理的能力。在Oracle 9i及其以后的版本中,还增加了使用BULK COLLECT子句批量绑定数据和使用CURSOR表达式实现嵌套游标的功能。本章将...
15.3 sql server中的存储过程和函数 308 15.3.1 系统存储过程 308 15.3.2 使用create procedure创建存储过程 309 15.3.3 使用execute语句调用存储过程 310 15.3.4 使用create function创建函数 312 15.3.5 使用...
4.3 通过存储过程配置SQL Server 88 4.3.1 使用SQL Server Management Studio查询 88 4.3.2 执行查询和改变设置 90 4.3.3 检查和设置配置参数 91 4.3.4 使用ALTER DATABASE改变设置 95 第Ⅱ部分 SQL ...
15.3 SQL Server中的存储过程和函数 15.3.1 系统存储过程 15.3.2 使用CREATE PROCEDURE创建存储过程 15.3.3 使用EXECUTE语句调用存储过程 15.3.4 使用CREATE FUNCTION创建函数 15.3.5 使用Enterprise ...