如何查看当前Open的Cursor

遇到错误:A cursor with thename ' ' already exists,想要看是什么代码导致的。找到下面几种方法.

 

--测试声明Cursor并且打开

DECLARE vend_cursor CURSOR

    FOR SELECT * FROMPurchasing.Vendor

OPEN vend_cursor

FETCH NEXTFROMvend_cursor;

 

--使用下面的三种方法都可以

SELECT ec.session_id,ec.name,ec.properties,ec.creation_time,ec.is_open,ec.writes,ec.reads,t.text

FROM sys.dm_exec_cursors(0)ec

CROSS APPLYsys.dm_exec_sql_text(ec.sql_handle)t

 

dbcc activecursors(0)

 

SELECT *FROMMASTER..SYSCURSORS

 

结果:

 如何查看当前Open的Cursor_第1张图片

看起来DMV的结果更全面。

转载于:https://www.cnblogs.com/watermarks/articles/3747657.html

你可能感兴趣的:(如何查看当前Open的Cursor)