小编And*_*ren的帖子

带有全局标志的 DBCC TRACEON

在“需要帮助对 Sql Server 2005 死锁场景进行故障排除”的问题中,有人建议使用DBCC TRACEON (1204, -1)全局跟踪死锁。

当在 BOL 中阅读有关此命令时,它指出仅当用户或应用程序不在系统上同时运行语句时才应使用它。这是否意味着在启用此跟踪标志时我们必须处于单用户模式?此外,为什么需要它,遵循建议是否重要?(在始终运行的生产系统中似乎有点难以遵循。)

sql-server dbcc

8
推荐指数
1
解决办法
366
查看次数

找出必须在插入语句中指定哪些列

有时在具有多列的表中插入数据时,如果插入语句不应该失败,知道必须指定哪些列会很有用。

我写了这个查询来找出哪些列不可为空、标识、计算、时间戳和没有默认值。

select  *
from    sys.columns
where   object_id = object_id('<table>') and
        is_nullable = 0 and
        is_identity = 0 and
        is_computed = 0 and
        default_object_id = 0 and
        type_name(system_type_id) <> 'timestamp'
Run Code Online (Sandbox Code Playgroud)

此检查中是否应包含任何其他属性?

sql-server-2008 sql-server insert default-value

6
推荐指数
1
解决办法
210
查看次数

可序列化隔离级别对 DDL 语句有什么影响?

我正在使用 Red Gate SQL Compare 根据 SVN 和数据库之间的差异创建发布脚本。这导致脚本包含一堆表和过程更改,并且工作正常。然而,有一件事让我感到困惑,它使用了可序列化的事务隔离级别。

我知道它对 dml 语句的作用,但我不确定它对 ddl 意味着什么。有人可以启发我,也许举个例子吗?

sql-server-2008 sql-server ddl isolation-level

3
推荐指数
1
解决办法
1347
查看次数