我想使用C#将现有的SQL Server 2008数据库架构而不是数据复制到同一服务器上的新数据库(即MyDB => MyDB_Test)。
我在http://www.codeproject.com/KB/cs/CopyDBSchemaUsingSMO.aspx找到了一些示例代码,它似乎完全符合我的要求,但它在ddatabase.Create()行中不断抛出以下错误:
Could not load file or assembly 'Microsoft.SqlServer.BatchParser, Version=9.0.242.0, Culture=neutral,
公钥= 89845dcd8080cc91' 或其中一个依赖项。系统找不到该文件 指定 “:” Microsoft.SqlServer.BatchParser, 版本= 9.0.242.0, Culture = neutral,PublicKeyToken = 89845dcd8080cc91“
我试图找到丢失的DLL,但我只能找到SQL Server 2005的版本。我不确定是否应该使用它,寻找替代下载或采取完全不同的方法。
非常感谢任何帮助!!
答案 0 :(得分:1)
我在机器上看到SQL Server 2008组件的安装不完整 - 在这种情况下,只需转到Microsoft's download site并抓住自己Microsoft SQL Server 2008 Management Objects
(略低于中间位置)适当的版本(x86 32位,或x64 64位或IA64 64位 - 取决于您的需要)。
安装并重试。
您可能想要考虑的其他事情是购买和使用现有工具,而不是自己编写所有代码。查看例如Red-Gate的SQL Compare允许你这样做 - 比较两个数据库(它们的结构)并确保它们都处于同一水平。
答案 1 :(得分:0)
我想到的一些问题需要考虑:
听起来这不是一次性的,而是你想在更多场合做的事情,所以我建议: