如何将参数传递给 ms 访问以取回数据

Posted

技术标签:

【中文标题】如何将参数传递给 ms 访问以取回数据【英文标题】:How to pass parameters to ms access to get the data back 【发布时间】:2009-06-15 04:07:04 【问题描述】:

我是 ms 访问的新手。任何人都可以帮助我将参数发送到查询并取回数据(通过示例)..我使用 C# 作为编码语言(Asp.Net)

提前致谢

【问题讨论】:

请输入代码?显示一些你已经编写的代码? 从 ms 重新标记为 ms-access。标签 ms 很少使用且不一致。 【参考方案1】:

您将需要以下 using 语句:

using System.Data.OleDb;

例子:

string ConnString = "Microsoft.Jet.OleDb.4.0;Data Source=|DataDirectory|Northwind.mdb";
string SqlString = @"Select * From Contacts 
                    Where FirstName = @FirstName And LastName = @LastName";
using (OleDbConnection conn = new OleDbConnection(ConnString))

    using (OleDbCommand cmd = new OleDbCommand(SqlString, conn))
    
        cmd.CommandType = CommandType.Text;
        cmd.Parameters.AddWithValue("FirstName", txtFirstName.Text);
        cmd.Parameters.AddWithValue("LastName", txtLastName.Text);
        conn.Open();
        using (OleDbDataReader reader = cmd.ExecuteReader())
        
            while (reader.Read())
            
                Response.Write(reader["FirstName"].ToString() + " " + reader["LastName"].ToString());
            
        
    

【讨论】:

【参考方案2】:

ASP.NET 提供了一个AccessDataSource 控件,大大简化了这一过程。您可以像下面的示例一样使用它,并将结果直接绑定到 gridview。

<asp:AccessDataSource
  id="InvoiceAccessDataSource"
  DataFile="~/App_Data/Northwind.mdb"
  runat="server"
  SelectCommand="[Employee Sales By Country]"
  SelectCommandType="StoredProcedure">
  <SelectParameters>
    <asp:Parameter Name="Beginning Date" Type="DateTime" defaultValue="1/1/1997" />
    <asp:Parameter Name="Ending Date" Type="DateTime" defaultValue="1/31/1997" />
  </SelectParameters>
</asp:AccessDataSource>

<asp:GridView
  id="InvoiceGridView"
  runat="server"
  AutoGenerateColumns="True"
  DataSourceid="InvoiceAccessDataSource" />

【讨论】:

以上是关于如何将参数传递给 ms 访问以取回数据的主要内容,如果未能解决你的问题,请参考以下文章

如何将参数传递给 SqlDataAdapter

如何将参数传递给 Vue 组件以启动组件实例

MS Access - 从文本框中的用户输入将参数传递给 SQL 语句

如何将用户定义的参数传递给 rpmbuild 以填充变量

MS Access,如何将参数传递给子查询?

如何将 argparse 参数传递给类