我正在用可视化 C# 制作一个程序,我在其中提取数据并将其放入 dataGridView 中。这一切都很好,但如果我之后尝试提取更多数据(我想放入文本框的数据),则会出现错误。
这是我提取数据并将其放入 dataGridView 的部分:
SqlConnection connect;
DataSet ds1 = new DataSet();
SqlDataAdapter da;
connect = new SqlConnection();
connect.ConnectionString = "Data Source=THEPC-PC\\SQLExpress;Initial Catalog=DataBase;Integrated Security=True";
string sql = "SELECT * FROM table WHERE column = '" + comboBox.Text + "'";
da = new SqlDataAdapter(sql, connect);
da.Fill(ds1, "table");
the_data_dataGridView.AutoGenerateColumns = false;
the_data_dataGridView.DataSource = ds1.Tables["table"];
connect.Open();
connect.Close();
以下代码是我在上一个查询之后尝试进行的下一个查询。它在显示“ExecuteScalar”的第 3 行显示此错误:
“string”不包含“ExecuteScalar”的定义,并且找不到接受“string”类型的第一个参数的扩展方法“ExecuteScalar”(您是否缺少 using 指令或程序集引用?)
SqlCommand sql2 = new SqlCommand("SELECT COUNT(column) FROM table WHERE column = '" + comboBox.Text + "'", connect);
connect.Open();
int the_result = System.Convert.ToInt32(sql.ExecuteScalar());
the_result_textBox.Text = the_result.ToString();
connect.Close();
两段代码在不同的形式下都可以正常工作。但显然不会一个接一个地工作。现在我确定我在这里做了一些非常愚蠢的事情,但无法弄清楚。