1

我有一个包含 5 列MsUser.mdf的表的 SQL Server 数据库文件:MsAccount

userID   accountID   accountName   accountBalance   imageLocation

我需要找到被选中的accountBalance位置accountID = combobox,并将其显示在labelBalance._text. AccountBalancedecimalaccountIDvarchar(10)

我在组合框事件选择索引处编写了代码。感谢您的帮助。

      private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
      {
          string selected = comboBox2.SelectedItem.ToString();//typ0000001-cake
          int position = selected.IndexOf("-");
          string accountID = selected.Substring(0,position);//typ0000001
          SqlDataAdapter sdaUserID = new SqlDataAdapter("Select Count(accountBalance),accountBalance From MsAccount where accountID='" +accountID+"'", cn);
          DataTable dt1 = new DataTable();
          sdaUserID.Fill(dt1);
          lblBalance.text = dt1.Rows[0][1].ToString();

      }
4

1 回答 1

1

我很高兴您的代码正常工作。通常,创建参数化查询会更好,但如果安全性不是主要问题,那么只需一个普通的 select SQL 字符串就可以完成这项工作(如您的情况)。

关于一些性能优化的几句话:我建议使用String.Concat(string1, string2)而不是string1+string2方法,因此最好从代码中修改该行,如下所示:

SqlDataAdapter sdaUserID = new SqlDataAdapter(String.Concat ("Select Count(accountBalance),accountBalance From MsAccount where accountID='",accountID, "'"), cn);

此致,

于 2015-01-15T16:42:07.460 回答