weixin_43691257
2019-06-23 12:50
采纳率: 100%
浏览 269

Winform中Datagridview通过Textbox的查询语句报错,求解答

图片说明图片说明

把where语句去掉可以查到所有数据,但是加上去以后什么也查不到,也没有报语法错误

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • eaqpi 2019-06-25 17:55
    已采纳

    你在sqlserver 的查询器里写textbox本来就是错误。这是2个程序。

    你可以在vs的dataset界面使用参数,@项目主管。

    sql的写法为:select 项目主管,项目名称,申请时间,审核状态 from 申报信息 where 项目主管 = @项目主管。

    或者:string sql = "select 项目主管,项目名称,申请时间,审核状态 from 申报信息 where 项目主管='" + textbox1.text +"'"

    打赏 评论
  • weixin_43691257 2019-06-23 15:19

    这样做以后成功了,不过我觉得代码有点长,我再找找资料,看看能不能简化下
    SqlConnection myConnection = new SqlConnection();
    myConnection.ConnectionString = "integrated security=SSPI;data source=\"LAPTOP-B0MV28KR\SQLEXPRESS\"; persist security info=False; initial catalog= 大学生创新项目 ";
    myConnection.Open();
    string sql = "select 项目主管,项目名称,申请时间,审核状态 from 申报信息 ";
    SqlDataAdapter da = new SqlDataAdapter(sql, myConnection);
    DataSet ds = new DataSet("Products");
    da.Fill(ds,"Products");
    //使用数据适配器的Fill方法将所需数据填充到数据集
    dataGridView1.DataSource = ds.Tables["Products"];
    DataView dv = ds.Tables["Products"].DefaultView;
    dv.RowFilter = "项目主管 = '" + textBox2.Text + "'";
    dataGridView1.DataSource = dv;

    打赏 评论

相关推荐 更多相似问题