0

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

这是我的代码:

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();
}

谢谢!:)

4

3 回答 3

1

您只需要在查询中写下where条件即可为您工作,

以下是它的例子

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

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

而不是*在选择列表中给出要显示的列的名称。

用于获取文本框等值表单控件

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

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

于 2013-03-01T06:21:57.320 回答
1

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

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

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

这是一个公开的表格,还是只为您(或受信任的用户)提供的内部表格?

于 2013-03-01T06:24:29.020 回答
0

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

代替在查询中使用 * 进行搜索,输入所需的列,例如:- string query = "SELECT phno,address,FirstName From TableAcct where LastName ='"+txt1.text +"'";

于 2013-03-01T06:36:50.950 回答