数据库服务器磁盘内存已满

时间:2009-09-11 07:21:42

标签: sql-server

我正在使用SQL Server作为我的Web应用程序。我怎么知道插入查询失败,因为数据库服务器内存磁盘已经满了

5 个答案:

答案 0 :(得分:4)

您将收到的错误代码将指示磁盘已满:1105(主文件组已满)或9902(已完成日志文件)

答案 1 :(得分:2)

您可以通过禁用数据库上的自动增长功能(它是文件选项卡上数据库属性中的复选框)并填充数据库来模拟此操作。错误将是相同的。

ALTER DATABASE YourDatabase
MODIFY FILE (name='YourFile' MAXSIZE=50MB);

答案 2 :(得分:1)

如果你想找到你的内存使用情况

exec sp_spaceused

这将为您提供特定数据库使用的内存量

答案 3 :(得分:1)

当您尝试插入数据库时​​,请检查从SQL Server返回的错误代码。

如果发出错误,您可以决定该怎么做。 (例如,尝试再次插入, 尝试释放服务器上的一些内存)另外,如果您还没有,请将Insert语句放在Transaction中,以便在发生错误时可以回滚。

答案 4 :(得分:1)

我想你可以相信,如果磁盘已满,SQL服务器将返回错误代码:)。

您可以让您的测试代码认为它正在与SQL服务器进行通信,但它会与您的某些虚假对象进行对话,这些对象将使用您要测试的错误代码进行响应。

有些框架可以帮助您。其中一个是您可以从http://ayende.com

下载的Rhino Mocks