如何在c#中搜索A DataTable [英] How to search A DataTable in c#

查看:93
本文介绍了如何在c#中搜索A DataTable的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我执行时,没有任何反应

datagridview不会更新

When i execute this nothing happens
the datagridview does not update

public void Search() 
{
   OleDbCommand ocm = new OleDbCommand("SELECT Firstname FROM students WHERE Firstname LIKE '% Hello %' ", conn);
   conn.Open(); 
   ocm.ExecuteNonQuery(); 
   conn.Close(); 
}

推荐答案

ExecuteNonQuery旨在发出INSERT,DELETE或UPDATE等命令。它不适用于SELECT。您可以做的是使用ExecuteDataReader,如下所示:
ExecuteNonQuery is designed to issue commands like INSERT, DELETE or UPDATE. It''s not intended for use in SELECTs. What you could do, is use ExecuteDataReader like this:
private List<string> names = new List<string>();
public void Search() 
{
  using (OleDbCommand ocm = new OleDbCommand("SELECT Firstname FROM students WHERE Firstname LIKE '% Hello %' ", conn))
  {
    conn.Open(); 
    OleDbDataReader reader = ocm.ExecuteDataReader(); 
    while (reader.Read())
    {
      names.Add(reader[0]);
    }
    conn.Close(); 
  }
}


您可以使用DataAdapter从数据库中获取表格:

You can use DataAdapter to get table from database :
conn.Open();
OleDbDataAdapter ad = new OleDbDataAdapter("", conn);
DataTable dt = new DataTable();
ad.Fill(dt);
gridView.DataSource = dt;


您好。您可以参考以下代码。

Hi.You can refer to the following code.
public void Search()
 {
   using (OleDbConnection con = new OleDbConnection(constring))
   {
      con.Open();
      OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT Firstname FROM students WHERE Firstname LIKE '% Hello %' ", con);
      DataTable tb = new DataTable();
      adapter.Fill(tb);
      dataGridView1.DataSource = tb;
   }
}





如果您有任何疑问,请与我联系。



If you have any question,please contact me.

这篇关于如何在c#中搜索A DataTable的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆