2010-05-28 50 views
2

如何为测试目的手动向数据库中引入完整性错误,而不会完全破坏数据库,以便仍可以运行我的程序。为测试目的创建SQL Server数据库的完整性错误

有更具体的问题更新...

实际的功能,我正在测试运行DBCC CHECKDB和我所测试的是,它报告未能给用户。

回答

1

有一些样本损坏的数据库,这里http://www.sqlskills.com/BLOGS/PAUL/post/Sample-corrupt-databases-to-play-with.aspx

或者败坏自己看到这个帖子http://sqlblogcasts.com/blogs/tonyrogerson/archive/2007/03/10/how-to-create-a-corrupt-database-using-bulk-insert-update-and-bcp-sql-server-as-a-hex-editor.aspx。该链接中的第一个看起来合适,因为破坏不常用的Non Clustered索引应该允许程序运行,并且通过重建索引也可以恢复(但显然需要先采取适当的备份步骤!)。

另一个可能最接近您需求的好链接。 http://sqlblogcasts.com/blogs/christian/archive/2007/10/07/how-to-corrupt-a-page-in-a-specific-index-and-then-fix-it.aspx