2009-01-28 34 views

回答

1

我發現後續的解決方案自:

DataTable td = conn.GetSchema(DbMetaDataCollectionNames.DataSourceInformation); 
DataRow info = td.Rows[0]; 
String name = info[DbMetaDataColumnNames.DataSourceProductName]; 

例如,這將返回的Microsoft SQL Server,是驅動獨立。

1

connection.Database會工作,或者你可以執行

select db_name() 

對connection.Database

connection.Open(); 
     Console.WriteLine("ServerVersion: " + connection.ServerVersion 
      + "\nDatabase: " + connection.Database); 
     connection.ChangeDatabase("master"); 
     Console.WriteLine("ServerVersion: " + connection.ServerVersion 
      + "\nDatabase: " + connection.Database); 
     Console.ReadLine(); 
2

擴大我認爲OdbcConnection.Driver財產可能在OP的情況下比較合適,因爲ServerVersion應只返回版本號。

Driver屬性將返回DLL的名稱,例如SQL Server的「Sqlsrv32.dll」。然後OP可以應用基於事例的邏輯。

+0

我明白了,因爲他想要默認的數據庫名稱 – SQLMenace 2009-01-28 18:41:12