我试图在Server计算机上执行架构文件。我现在安装了Server 2005和Server 2008。当我尝试执行.sql文件(打算在2008年版本上执行)时,我会得到以下错误。
Microsoft.SqlServer.Management.Common.ConnectionFailureException:
Failed to connect to server . --->
Microsoft.SqlServer.Management.Common.ConnectionFailureException: This SQL Server
version (10.0) is not supported是否有一种方法可以指定Microsoft.SqlServer.Management.Smo.dll在执行程序时所查看的版本,或者除卸载2005版本之外的其他解决方法?
编辑
我正在从一个.sql应用程序运行ASP.Net文件,并使用Microsoft.SqlServer.SMO dll
ServerConnection conn = new ServerConnection(new System.Data.SqlClient.SqlConnection(connString),);
Server srv = new Server(conn);
// execute sql file
srv.ConnectionContext.StatementTimeout = 300000;
srv.Databases[conn.DatabaseName].ExecuteNonQuery(schema);发布于 2011-03-25 20:51:49
从未尝试过从ASP.NET进程中运行SMO程序,但您可能只需加载文件,打开"GO“,然后以一系列SQL命令的形式运行它,而不会太麻烦。这不应该关心sql版本问题,除非有某种特定于版本的SQL语句。
发布于 2011-03-25 21:09:54
根据您收到的错误消息,听起来很像是在使用/访问SQL 2005实用程序。“Version10.0”是SQL 2008 (工程术语,而不是市场营销)。您确定您正在访问正确的dll吗?
很久很久以前,我碰到了类似的事情。我们在一个盒子上有SQL7.0和2000 (我很久以前就说过了),我们通过批处理文件命令窗口调用了一些实用程序,就像这样,我们只能运行旧的/不兼容的实用程序版本。几天后有人向格雷格问好!如果要查看DOS环境路径设置,那么,由于文件夹的顺序,操作系统会在新版本之前找到旧版本。你现在会不会被这样的东西绊倒了?
https://stackoverflow.com/questions/5437891
复制相似问题