94得票6回答
由于数据库当前正在使用中,因此无法删除数据库<dbname>... 但是没有显示任何会话。

当我尝试删除一个数据库时,我收到了错误信息"无法删除数据库 "dbname",因为它当前正在使用中"。然而,当我运行sp_who2时,确实没有任何会话连接到这个数据库。我还将数据库设置为single_user mode with rollback immediate。 为什么会发生这种情况?

92得票2回答
如何获取当前日期而不包含时间部分

在SQL Server 2005中,我如何获取当前日期而不包含时间部分?我一直在使用GETDATE(),但希望它的时间为00:00:00.0。

80得票5回答
如果我们在 SQL Server 中启用“读已提交快照”,会有哪些风险?

我已经在这里读到,每行将存储一些额外的数据,因此我们可能会看到性能降低,但还有哪些风险? 例如。 这会影响数据库的恢复吗? 我们需要做其他什么才能利用这一点吗? 我计划执行这些命令: ALTER DATABASE DatabaseName SET READ_COMMITTED_SNAPS...

70得票4回答
Index Seek vs Index Scan

看着一个运行缓慢的查询的执行计划,我注意到一些节点是索引搜索,而另一些节点是索引扫描。 索引搜索和索引扫描有什么区别? 哪个性能更好? SQL是如何选择其中之一的? 我知道这是三个问题,但我认为回答第一个问题将解释其他问题。

53得票3回答
在SQL Server查询中添加通配符(或者TOP)会导致查询速度大幅减慢。

我有一个拥有2000万只动物的动物园,我在我的SQL Server 2005数据库中进行跟踪。其中大约1%是黑天鹅,另外1%是白天鹅。我想要获取所有黑天鹅的详细信息,为了不让结果页面过于拥挤,我执行了以下操作: select top 10 * from animal where colo...

51得票5回答
SQL Server维护计划 - 任务和调度的最佳实践

我被委托制定我们的 Sql Server 2005 数据库的维护计划。对于备份,我希望每天进行完整数据库备份,并且每隔15分钟进行事务日志备份。但是,我遇到了一个问题,即确定其他任务和执行频率。 目前我考虑的方案如下,请纠正我思考中的任何错误或更好的做法。 备份 - 所有表格,完整备份(...

48得票5回答
我可以启动一个存储过程并立即返回而无需等待它完成吗?

我们有一个存储过程,用户可以手动运行以获取报告中不断使用的一些更新数字。 我有第二个存储过程,应该在第一个存储过程运行后运行,因为它是基于从第一个存储过程获得的数字,然而它需要更长的时间运行,并且是针对另一个独立的过程,所以我不想让用户等待这个第二个存储过程的运行。 有没有办法让一个存储过...

48得票10回答
我如何使用SELECT INTO复制一个表,但忽略IDENTITY属性?

我有一个带有标识列的表,比如说: create table with_id ( id int identity(1,1), val varchar(30) ); 众所周知,这一点。 select * into copy_from_with_id_1 from with_id; ...

41得票3回答
收缩数据库和文件之间有什么区别?

DBCC ShrinkDatabase() DBCC ShrinkFile() 我需要运行这两个DBCC命令来缩小数据库吗? 这两个命令有什么区别?