22,301
社区成员




--建立一个专门取最后一行的存储过程
IF OBJECT_ID('ReturnTableLastRow','') IS NOT NULL
DROP PROC ReturnTableLastRow
GO
-- =============================================
-- title: 利用动态游标,取表的最后插入的行
-- author: coleling
-- date: 2010-10-22
-- memo: 本过程只对没有主键和聚集索引的表有效
-- =============================================
CREATE PROC ReturnTableLastRow
(
@TableName Varchar(50)
)
AS
BEGIN
EXECUTE ('DECLARE curLast CURSOR DYNAMIC FOR SELECT * FROM ' + @TableName)
OPEN curLast
FETCH LAST FROM curLast
CLOSE curLast
DEALLOCATE curLast
END
--调用的时候,只需要输入以下语句即可:
EXEC ReturnTableLastRow 'tablename'