2012-02-24 3 views
-1

データベースには50個のデータベース(adventureworks、adventureworksDw、sampleDb .....)が含まれていますADO.netを使用して1つのSelectboxですべてのデータベース名を取得する方法は?

ADO.netを使用して1つの選択ボックスですべてのデータベース名を取得する方法を教えてください。

私を助けてもらえますか?解決策はありますか?

おかげで、あなたのデータアクセス層で

ラジャセカー

+1

私のためにうまく働きましたか? – V4Vendetta

答えて

1

は、どのデータベース

public void PopulateDatabaseNames(string connectionString, ComboBox cboDBNames) 
{ 
    SqlDataAdapter da = null; 
    SqlCommand cmd = null; 
    SqlConnection cnn = null; 
    try 
    { 
     using(cnn = new SqlConnection(connectionString)) 
     using(cmd = new SqlCommand()) 
     using(da = new SqlDataAdapter()) 
     { 
      cnn.Open(); 
      cmd.CommandText = "SELECT NAME FROM master..sysdatabases order by NAME"; 
      cmd.CommandType = CommandType.Text; 
      cmd.Connection = cnn; 
      SqlDataReader myReader = cmd.ExecuteReader(); 
      while (myReader.Read()) 
      { 
       string name = myReader.GetString(0).ToLower(); 
       if (name != "master" && name != "tempdb" && name != "model" && name != "msdb") 
       { 
        cboDBNames.Items.Add(name); 
       } 
      } 
     } 
    } 
    catch (System.Exception e) 
    { 
     MessageBox.Show(e.Message, "PopulateDatabasesNames"); 
    } 
} 
0

あなたがドロップダウンリストのためにあなたがデータソースとして返されたオブジェクトを置くことができます

Select name from sys.databases 

でサーバーを照会し、そしてに忘れてはなりませんddl!のデータバインドを呼び出します。この古い手順を発見

関連する問題