小编tus*_*eau的帖子

SQL Server 无法删除数据库 <dbname>,因为它当前正在使用...但没有显示会话

当我尝试删除数据库时,出现错误“无法删除数据库“dbname”,因为它当前正在使用中”。但是,当我运行时sp_who2,肯定没有连接到该数据库的会话。我还将数据库设置为single_user mode with rollback immediate.

为什么会这样?

sql-server-2005 sql-server

88
推荐指数
5
解决办法
22万
查看次数

加速无子句的巨大 DELETE FROM <table> 的方法

使用 SQL Server 2005。

我正在执行一个没有 where 子句的巨大 DELETE FROM。它基本上等同于 TRUNCATE TABLE 语句 - 除了我不允许使用 TRUNCATE。问题是表很大 - 1000 万行,需要一个多小时才能完成。有没有办法让它更快,没有:

  • 使用截断
  • 禁用或删除索引?

t-log 已经在一个单独的磁盘上。

欢迎任何建议!

performance sql-server delete

38
推荐指数
4
解决办法
8万
查看次数

SQL Server 是否会删除旧的错误日志文件?

我知道我可以通过运行 sp_cycle_errorlog 轻松循环当前错误日志,但我想知道 SQL Server 是否会删除旧的/存档的错误日志文件。似乎无法在任何地方找到答案...

sql-server error-log

14
推荐指数
3
解决办法
3万
查看次数

SQL Server 死锁图 - 表、页或行锁?

有没有办法破译死锁图中的锁是表级、页级还是行级?我从图中获得了我需要的所有信息,包括隔离级别 (2),但我也很想知道这一点。

感谢任何能提供帮助的人!

sql-server deadlock

10
推荐指数
1
解决办法
5434
查看次数

SQL Server IDENTITY 列自动重新播种

我使用庞大的数据集。我的数据库中发生的许多事务都是巨大的——数万亿行,甚至更多。

一些表使用IDENTITY列,而不是用于唯一 ID,只是因为它简单快速,并提供并发解决方案来提供递增数字。但是,当该IDENTITY列达到其限制时,我希望它在达到其限制时立即在语句中自动重新设定种子。

我很欣赏这对大多数人来说是奇怪的行为,但至少将此功能作为一个选项是有意义的,当然吗?你甚至不能在事务中重新播种,我也不能使用 truncate(不想删除)。

为什么这是不可能的?有没有其他人遇到过这个问题?

功能如下:在 SQL Server 中,我有一个表作为序列号生成器,就像 Oracle 中的 Sequence 一样。我们希望数字的最大值是 999999,之后重置为 0。这个数字被添加到其他一些字段(其中一个是日期戳)以生成参考数字。

该系统是高度并发的,我需要它在生成参考号时相当明显。就目前而言,有一个每天运行的任务来重新播种该IDENTITY列,但由于每天的记录数量很大,如果处理的记录数大于 999999,我就会收到错误消息。

sql-server identity

5
推荐指数
1
解决办法
9974
查看次数

为什么 OUTPUT INTO 子句的目标不能是视图?

这是我的声明:

DELETE FROM table1 OUTPUT deleted.col1,deleted.col2 INTO view1;

它给了我这个错误:

OUTPUT INTO 子句的目标“view1”不能是视图或公用表表达式。

该视图简单且可更新。为什么我不能使用 OUTPUT 子句插入可更新视图?

sql-server-2008 sql-server t-sql

5
推荐指数
1
解决办法
1336
查看次数

Management Studio 无法识别其他文件扩展名

我正在使用 SSMS 2012。我正在使用 .PRC、.TAB 和 .UDF 文件。我将这些文件扩展名添加到 SSMS,以便它已经通过工具 > 选项 > 文本编辑器 > 文件扩展名将它们视为 .SQL 文件,但最近 SSMS 已停止识别这些文件(例如,不会使用颜色编码显示它们或允许我对数据库运行它们)。有趣的是,当我从文件中删除文件扩展名时,它会识别它们,因为它选中了“将无扩展名的文件映射到 SQL 查询编辑器”。

有谁知道问题可能是什么?

sql-server ssms

5
推荐指数
1
解决办法
2568
查看次数

SQL Server 代理作业步骤“运行方式”下拉列表

在 SQL Server 2008 R2 代理中创建作业步骤时,“常规”页面中的第三个下拉列表是“运行方式:”-但这是空的,而且似乎始终是空的!它是做什么用的?

谢谢

sql-server

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