ASP.NET Tutorial/ADO.net Database/OleDbDataAdapter

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

Filling Multiple DataTables

   <source lang="csharp">

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="FillingMultipleDataTables" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head id="Head1" runat="server">

  <title>Filling Multiple DataTables</title>

</head> <body>

  <form id="form1" runat="server">

Filling Multiple DataTables

        This example illustrates the filling of multiple DataTables
        

Books

     <asp:GridView ID="grdBooks" runat="server" />

Authors

     <asp:GridView ID="grdAuthors" runat="server" />
     
        <asp:Label ID="labMsg" runat="server" />
        
  </form>

</body> </html> File: Default.aspx.cs using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.OleDb; public partial class FillingMultipleDataTables : System.Web.UI.Page {

  protected void Page_Load(object sender, EventArgs e)
  {
     string connString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=";
     connString += Server.MapPath("~/App_Data/Book.mdb") + ";";
     DataSet ds = new DataSet();
     try
     {
        OleDbConnection conn = new OleDbConnection(connString);
        conn.Open();
        OleDbDataAdapter adapter = new OleDbDataAdapter();
        string sqlBooks = " SELECT * FROM Books";
        OleDbCommand cmdBooks = new OleDbCommand(sqlBooks, conn);
        adapter.SelectCommand = cmdBooks;
      
        adapter.Fill(ds, "BooksTable");
        string sqlAuthors = " SELECT * FROM Authors";
        OleDbCommand cmdAuthors = new OleDbCommand(sqlAuthors, conn);
        adapter.SelectCommand = cmdAuthors;
        adapter.Fill(ds, "AuthorsTable");   
        grdAuthors.DataSource = ds.Tables["AuthorsTable"].DefaultView;
        grdAuthors.DataBind();
        grdBooks.DataSource = ds.Tables["BooksTable"].DefaultView;
        grdBooks.DataBind();
        conn.Close();
     }
     catch (Exception ex)
     {
     }
   }

}</source>


Fill the DataSet by using the OleDbDataAdapter and connection to Access Database (VB.net)

   <source lang="csharp">

<%@ Page Language="VB" %> <%@ Import Namespace="System.Data" %> <%@ Import Namespace="System.Data.OleDB" %> <script runat="server">

  sub Page_Load(Sender as Object, e as EventArgs) 
     dim myConnection as new OleDbConnection( _
           "PROVIDER=Microsoft.Jet.OLEDB.4.0;" _
           & "DATA SOURCE=" _
           & Server.MapPath("EmployeeDatabase.mdb;"))
     dim myCommand as OleDbDataAdapter = new OleDbDataAdapter _
        ("select * from employee", myConnection)
      dim ds as DataSet = new DataSet()
      myCommand.Fill(ds, "employee")
   end sub

</script> <html><body>

  <form runat="server">
  
  </form>

</body></html></source>


Use DataTable to read the result set from an OleDbDataAdapter and a DataSet (VB.net)

   <source lang="csharp">

<%@ Page Language="VB" %> <%@ Import Namespace="System.Data" %> <%@ Import Namespace="System.Data.OleDb" %> <script runat="server">

  sub Page_Load(Sender as object, e as eventargs)
     dim objConn as new OleDbConnection( _
           "PROVIDER=Microsoft.Jet.OLEDB.4.0;" _
           & "DATA SOURCE=" _
           & Server.MapPath("EmployeeDatabase.mdb;"))
     dim objCmd as new OleDbDataAdapter("select * from employee", objConn)
     dim ds as DataSet = new DataSet()
     objCmd.Fill(ds, "employee")
     
     dim dTable as DataTable = ds.Tables("employee")
     Dim CurrRows() as DataRow = dTable.Select(Nothing,Nothing, DataViewRowState.CurrentRows)
     Dim I, J as integer
     Dim strOutput as string
     For I = 0 to CurrRows.Length - 1
        For J = 0 to dTable.Columns.Count - 1
           strOutput = strOutput & dTable.Columns(J). _
              ColumnName & " = " & CurrRows(I)(J).ToString & _
              "
" next next Response.write(strOutput) end sub

</script> <html><body> </body></html></source>