SET QUOTED_IDENTIFIER ON默认设置保存在哪里

时间:2016-06-09 20:14:06

标签: settings sql-server-2000

我需要找出SQL Server 2000数据库的默认quoted_identifier设置。 {/ 1}}存在于SQL Server 2008 R2(及其中),但我需要通过T-SQL找出SQL Server 2000数据库的设置。

2 个答案:

答案 0 :(得分:1)

我没有SQL Server 2000的实例,因此无法测试结果。 我找到的唯一解决方案是检查

OBJECTPROPERTY(object_id,'ExecIsQuotedIdentOn')

例如:

SELECT  
    SCHEMA_NAME(s.schema_id)  + '.' + s.name AS name,
    s.create_date, 
    s.modify_date, 
    OBJECTPROPERTY(s.object_id,'ExecIsQuotedIdentOn') AS IsQuotedIdentOn
FROM sys.objects s  
WHERE  
    s.type IN ('P','TR','V','IF','FN','TF')
    AND OBJECTPROPERTY(s.object_id,'ExecIsQuotedIdentOn') = 0
ORDER BY SCHEMA_NAME(s.schema_id)  + '.' + s.name DESC 

希望这有帮助。

答案 1 :(得分:0)

我赞扬安德烈但是对于那些需要在2000年运行它的人(sysobject不存在sys.objects等),这是有效的代码:

SELECT  
     s.name AS name,
     OBJECTPROPERTY(s.id,'ExecIsQuotedIdentOn') AS IsQuotedIdentOn
FROM sysobjects s  
WHERE  
    s.type IN ('P','D', 'K','S','U','V')
    AND OBJECTPROPERTY(s.id,'ExecIsQuotedIdentOn') = 1
ORDER BY  s.name DESC