L
liangexcel
Unregistered / Unconfirmed
GUEST, unregistred user!
下面的这个存储过程,目的是根据排序结果,更新Series的值.但是执行不了.
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
ALTER PROCEDURE [dbo].[ProUpdateSeries] AS
DECLARE @ITEM INT , @Series INT
--定义只读只进游标记录集
DECLARE CURTEST CURSOR FOR
SELECT A.ITEM , A.Series
FROM TNumBasic A , TtmpType B
WHERE A.typeID = B.TypeID
ORDER BY A.Isyear,A.Issue,A.IsNo
FOR UPDATE OF Series
--打开游标
OPEN CURTEST
FETCH NEXT FROM CURTEST --INTO @ITEM , @Series , @First0 , @First1 , @First2 , @First3 , @First4
SET @Series = 1
UPDATE TNumbasic Set Series = @Series FROM TNumBasic
WHERE CURRENT OF CURTEST
WHILE @@FETCH_STATUS = 0
BEGIN
SET @Series = 1
UPDATE TNumbasic Set Series = @Series FROM TNumBasic
WHERE CURRENT OF CURTEST
FETCH NEXT FROM CURTEST
END
CLOSE CURTEST
DEALLOCATE CURTEST
--SELECT A.* FROM TFirstLISTSum A,TFirstBASIC B WHERE A.ITEM = B.ITEM ORDER BY B.SERIES
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
ALTER PROCEDURE [dbo].[ProUpdateSeries] AS
DECLARE @ITEM INT , @Series INT
--定义只读只进游标记录集
DECLARE CURTEST CURSOR FOR
SELECT A.ITEM , A.Series
FROM TNumBasic A , TtmpType B
WHERE A.typeID = B.TypeID
ORDER BY A.Isyear,A.Issue,A.IsNo
FOR UPDATE OF Series
--打开游标
OPEN CURTEST
FETCH NEXT FROM CURTEST --INTO @ITEM , @Series , @First0 , @First1 , @First2 , @First3 , @First4
SET @Series = 1
UPDATE TNumbasic Set Series = @Series FROM TNumBasic
WHERE CURRENT OF CURTEST
WHILE @@FETCH_STATUS = 0
BEGIN
SET @Series = 1
UPDATE TNumbasic Set Series = @Series FROM TNumBasic
WHERE CURRENT OF CURTEST
FETCH NEXT FROM CURTEST
END
CLOSE CURTEST
DEALLOCATE CURTEST
--SELECT A.* FROM TFirstLISTSum A,TFirstBASIC B WHERE A.ITEM = B.ITEM ORDER BY B.SERIES
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO