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