有没有办法以编程方式检测SET IDENTITY_INSERT xyz ON / OFF设置?

时间:2011-04-26 15:10:51

标签: sql-server sql-server-2005 tsql

SESSIONPROPERTY会返回会话的某些SET选项设置(但不会返回IDENTITY_INSERT)。

是否以编程方式获取SET IDENTITY_INSERT xyz ON设置?

1 个答案:

答案 0 :(得分:1)

这不是很好,但是如果你找不到另一种方式:

BEGIN TRY
    CREATE TABLE #temp (my_id INT IDENTITY NOT NULL)
    SET IDENTITY_INSERT #temp ON
    SET IDENTITY_INSERT #temp OFF
    DROP TABLE #temp
END TRY
BEGIN CATCH
    SELECT ERROR_MESSAGE()
    DROP TABLE #temp
END CATCH

然后,您可以从ERROR_MESSAGE()解析结果,以找出为其设置的表名(如果有)。如果我找到更好的方法,那么我将替换这个答案。