我正在尝试“玩”一个小型数据库并制作了一个程序,该程序应该使用我提供的信息连接到数据库(该部分工作正常)
登录后程序的另一部分应该连接到数据库并做两件事: 1. 获取所有表名并将其放入组合框 2. 获取表的所有列名(从组合框中选择)并将它们显示在一个列表框
从那我计划检查一个列名并使用它在表上运行不同的 SQL 命令
我的问题是我不能让它工作
从 stackoverflow 和 google 搜索其他示例,我知道我遗漏了一些小东西,这使得这件事不起作用,但我不知道是什么。
在这件事上向比我自己有更多信息的人寻求帮助
对于组合框
private void listTables()
{
const string query = "SELECT * FROM [dstut].sys.Tables";
SqlConnection sqlConn = new SqlConnection(lw.ConnectionString);
sqlConn.Open();
SqlCommand cmd = new SqlCommand(query, sqlConn);
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
sda.Fill(ds);
List<string> l = new List<string>();
foreach (DataRow dr in ds.Tables[0].Rows)
{
l.Add(dr[0].ToString());
}
cbTables.DataSource = l;
}
public DataSet GetAllColumns()
{
string query = "SELECT name FROM " + TableName;
SqlConnection sqlConn = new SqlConnection(lw.ConnectionString);
sqlConn.Open();
SqlCommand cmd = new SqlCommand(query, sqlConn);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
foreach (DataRow dr in ds.Tables[0].Rows)
{
MessageBox.Show(Convert.ToString(dr["Field_1"]));
}
return ds;
}