【问题标题】:C# search form with database带有数据库的 C# 搜索表单
【发布时间】:2015-11-01 04:00:33
【问题描述】:

我有一个新学生的注册表单,我需要一个带有文本框的 datagridview 和 datagridview 上方的按钮,以按 studentID 搜索学生。我尝试了这段代码,但没有用

 private void txtsearch_Click(object sender, EventArgs e)
    {
        SqlConnection conn = new SqlConnection();
        DataTable dt = new DataTable();
        SqlDataAdapter SDA = new SqlDataAdapter();
        SDA.Fill(dt);
        dataGridView1.DataSource = dt;

    } 

【问题讨论】:

  • 究竟是什么不起作用?
  • 您没有提供连接字符串或 SQL... 重新阅读一些示例并按照它们的字母进行操作。
  • 它确切地说:在调用“填充”之前尚未初始化 SelectCommand 属性。 @dbugger
  • 非常清楚的消息——您还没有向适配器提供 SQL Select 语句。

标签: c# winforms datagridview


【解决方案1】:

您缺少一些东西:数据库的连接字符串和 Select 语句。您应该在按钮单击事件而不是文本框上的单击事件中执行此代码。这是一个更好的方法:

    private void btnSearch_Click(object sender, EventArgs e)
    {
        var conn = new SqlConnection();
        var dt = new DataTable();
        var SDA = new SqlDataAdapter("Select * from students where 
          studentId = " + txtSearch.Text, "Your connection string here");
        SDA.Fill(dt);
        dataGridView1.DataSource = dt;            
    }

【讨论】: