如何使用c#将mysql中的表名列表到组合框中
本文关键字:列表 组合 何使用 mysql | 更新日期: 2023-09-27 18:05:52
我想把mysql数据库中的表名列到combobox winform c#中。我在phpmyadmin中使用这个SQL查询,它返回我想要的结果。
SELECT table_name FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME LIKE '%nh%'
然后我试着用c#写函数。这是我的代码
void get_table()
{
string myConnection = "Server=localhost;Database=sctv_data;Port=3306;User ID=root;Password=;Charset=utf8";
string query = "SELECT table_name FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME LIKE '%nh%'";
conDatabase = new MySqlConnection(myConnection);
MySqlCommand cmdDataBase = new MySqlCommand(query, conDatabase);
MySqlDataReader myReader;
try
{
conDatabase.Open();
myReader = cmdDataBase.ExecuteReader();
cb_data_name.Items.Clear();
if (myReader.HasRows == true)
{
while (myReader.Read())
{
cb_chon.Items.Add((string)myReader[0]);
}
}
}
catch
{
}
}
但是它失败了;我认为它有问题,但我不知道如何解决。
使用SqlDataAdapter
void get_table()
{
string myConnection = "Server=localhost;Database=sctv_data;Port=3306;User ID=root;Password=;Charset=utf8";
string query = "SELECT table_name FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME LIKE '%nh%'";
conDatabase = new MySqlConnection(myConnection);
MySqlCommand cmdDataBase = new MySqlCommand(query, conDatabase);
MySqlDataAdapter myAdapter;
try
{
conDatabase.Open();
myAdapter= new mySqlAdapter(cmdDataBase);
cb_data_name.Items.Clear();
DataTable dt=new DataTable();
mySqlAdapter.Fill(dt);
cb_data_name.DatSource=dt;
cb_data_name.DisplayMemeber="table_name";
}
catch
{
}
}