我正在为我的办公室开发一些 winforms 应用程序。在我的应用程序中,我有 50 多个组合框,我想连接 MySQL 数据库并检索数据。每个组合框都应该从某个 MySQL 数据库列中检索数据。我以任何方式成功建立连接并使用以下代码将数据检索到组合框。
但现在我有一个很奇怪的问题。在我的 MySQL 数据库中有很多空值(有些列包含 30 行,而有些只有 1 或 2 行)。数据检索组合框后,第一个组合框(与第二列相关)正确显示数据,但从第二列开始,它只显示一或两行。列中的所有其他值未显示。我浏览了一些论坛并将我的 al null 值设置为空字符串。但在那之后,组合框会在最后一个字段之后向我显示空白条目列表。
我在查询后也尝试了 IS NOT NULL,这也不起作用:(
如何克服这种情况?我想将数据检索到所有组合框并且没有任何空值或空值。我正在使用 .net 框架 2.0
这是否可以在 C# 或 SQL 查询中以编程方式进行,或者我应该更改我的数据库结构?
(我对 MySQL 没有很好的了解。我使用工作台来创建数据库:()
这是我当前的代码
void combobox()
{
string constring = string.Format("datasource='{0}';port='{1}';database='{2}';username=****************;password=************;Connect Timeout=180;Command Timeout=180", dbserverip.Text,curport.Text,currentdb.Text);
string Query = "select * from estifdb.customconditions ;";
MySqlConnection conn = new MySqlConnection(constring);
MySqlCommand cmd = new MySqlCommand(Query, conn);
MySqlDataReader myreader666;
try
{
conn.Open();
myreader666 = cmd.ExecuteReader();
while (myreader666.Read())
{
string sName = myreader666.GetString("someval1");
applicationcombobox.Items.Add(sName);
string sName2 = myreader666.GetString("someval2");
applicationcombobox2.Items.Add(sName2);
string sName3 = myreader666.GetString("someval3");
applicationcombobox3.Items.Add(sName3);
string sName4 = myreader666.GetString("someval4");
applicationcombobox4.Items.Add(sName4);
string sName5 = myreader666.GetString("someval5");
applicationcombobox5.Items.Add(sName5);
// and 50 left