在datagridview中显示所选数据

时间:2013-03-01 06:19:31

标签: c# datagridview

我这里有代码显示访问数据库中的所有数据。是否可以仅显示我的数据库中的特定数据或选定数据?

这是我的代码:

string connStr = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\\SISC-STRONGHOLD\MIS!\wilbert.beltran\SEEDBucksDbase.accdb";
string query = "SELECT * From TableAcct";
using (OleDbConnection conn = new OleDbConnection(connStr))
{
    using (OleDbDataAdapter adapter = new OleDbDataAdapter(query, conn))
    {
        DataSet ds = new DataSet();
        adapter.Fill(ds);
        dataGridView1.DataSource = ds.Tables[0];
        dataGridView1.Columns["UserPassword"].Visible = false;

    }
    conn.Close();
}

谢谢! :)

3 个答案:

答案 0 :(得分:1)

你只需要在你的查询中记下where条件就可以了,

以下是它的例子

string query = "SELECT col1,col2 From TableAcct where col1=value";

这将获取满足您条件的数据并与网格控件绑定。

而不是选择列表中的*,而是提供要显示的列的名称。

获取值格式控件,如文本框

string query = "SELECT * FROM Employee WHERE LastName='"+ textBox1.Text +"'";

注意 - 使用sqlparameter来避免SQLInjection,上面只是一个例子。

答案 1 :(得分:1)

要查询姓氏(假设表中的列名为LastName),请尝试:

string query = "SELECT * FROM Employee WHERE LastName='"+ textBox1.Text +"'";

当然,您必须小心SQL注入攻击。我不熟悉在Access中使用参数化的查询。

这是公共表单,还是仅供您(或可信用户)使用的内部表单?

答案 2 :(得分:0)

string query =“SELECT(SelectedColumnNames)From TableAcct Where LastName =(LastName)”;

在查询中使用*搜索而不是在前面输入所需的列: - string query =“SELECT phno,address,FirstName From TableAcct where LastName ='”+ txt1.text +“'”;

相关问题