通过组合框选择数据库

Database Selection Via ComboBox

我有一个 combobox,我想将其用于 select 来自用户可用的 selection 的数据库。我发现了很多关于用 table 值填充字段的信息,但没有关于制作 selection 可以使用 .dbo 的信息。我猜可以使用相同的原理如下... 但我认为 (database =) 需要取出并以某种方式替换。 任何建议将不胜感激

var connectionString = "server = (local); database = database; integrated security = true;"
string Sql = "select database...";
SqlConnection _con = new SqlConnection(connectionString);
_con.Open();
SqlCommand cmd = new SqlCommand(Sql, conn);
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
    combobox1.Items.Add(reader[0]);
}

您需要这个查询;

string Sql = "SELECT * FROM sys.databases";

您可以从连接字符串中删除数据库选项并针对 master.dbo.sysdatabases 执行 sql 查询。

完整示例:

var connectionString = "server=(local);integrated security=true;"
string sql = "SELECT name FROM master.dbo.sysdatabases";
SqlConnection conn= new SqlConnection(connectionString);
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataReader reader = cmd.ExecuteReader();

        while (reader.Read())
        {
            combobox1.Items.Add(reader["name"]);

        }