我寫這篇尋找本地機器上的SQL Server實例:如何使用SMO連接到Sqlserver2008任何解決方法都必須完成?
using System;
using System.Data;
using Microsoft.SqlServer.Management.Smo;
namespace Application3
{
class Program
{
static void Main(string[] args)
{
string srvname = string.Empty; string srvnames = null;
DataTable dt = SmoApplication.EnumAvailableSqlServers(true);
Console.WriteLine("------------->" + dt.Rows.Count);
foreach (DataRow dr in dt.Rows)
{
try{
Console.WriteLine("-->Instance " + dr["name"]);
Server srv = new Server((string)dr["name"]);
foreach (Database db in srv.Databases)
Console.WriteLine(db.Name);
}catch(Exception e)
{
Console.writeLine(e.toString());
}
}
}
}
我有3個實例在我的本地機器
- rk2k3-VM-SR(SQL2008實例)
- rk2k3 -vm-SR \ sql2k8express(sql2k8 instacne)
- rk2k3-VM-SR \ SQLEXPRESS(sql2k5實例)
但它只顯示2和3. 1不顯示。當我使用服務器對象連接時,sql2k8express失敗。
這裏是輸出....
- >實例RK2K3-VM-SR \ SQLEXPRESS
主
模型
msdb中
tempdb的
- >實例RK2K3-VM-SR \ SQL2K8EXPRESS
Microsoft.SqlServer.Management.Common.ConnectionFailureException:無法conn將 ECT服務器RK2K3-VM-SR \ SQL2K8EXPRESS。 ---> Microsoft.SqlServer.Management.Com mon.ConnectionFailureException:此SQL Server版本(10.0)不受支持。 在Microsoft.SqlServer.Management.Common.ConnectionManager.CheckServerVersion (ServerVersion版) 在Microsoft.SqlServer.Management.Common.ConnectionManager.InternalConnect(無線 ndowsIdentity impersonatedIdentity) 在Microsoft.SqlServer.Management.Common.ConnectionManager.Connect () --- Microsoft.SqlServer.Management.Common.ConnectionManager.Connect() (位於Microsoft.SqlServer.Management.Common.ConnectionManager.PoolConnect() )上的內部異常堆棧跟蹤--- 末尾.Management.Common.ConnectionManager.get_ServerVersion( ) at Microsoft.SqlServer.Management.Smo.ExecutionManager.get_ServerVersion() 在Microsoft.SqlServer.Management.Smo.SqlSmoObject.GetDbComparer(布爾櫻雪 rver) 在Microsoft.SqlServer.Management.Smo.SqlSmoObject.InitializeStringComparer() 在Microsoft.SqlServer.Management.Smo.AbstractCollectionBase.get_StringCompar ER( ) 在Microsoft.SqlServer.Management.Smo.SimpleObjectCollectionBase.InitInnerCol 經文() 在Microsoft.SqlServer.Management.Smo.SmoCollectionBase.get_InternalStorage() 在Microsoft.SqlServer.Management.Smo.SmoCollectionBase.InitializeChildCollec 和灰(布爾刷新) at Microsoft.SqlServer.Management.Smo.SmoCollectionBase.GetEnumerator() at ConsoleApplication3.Program.Main(Stri ng [] args)在C:\ Documents and Settin gs \ Administrator.APP \ Desktop \ ConsoleApplication3 \ Program中。cs:line 25
我該如何解決這個問題?我的系統防火牆被禁用,所有的sql服務都在運行。
不,它是專爲SQL2008 – Cute 2009-07-16 06:17:14