主页 > 编程资料 > C# >
发布时间:2015-09-26 作者:网络 阅读:227次

using System;
using System.Data;
using System.Data.ADO;

public class MainClass
{
   public static void Main ()
   {
      // set Access connection and select strings
      string strAccessConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=BugTypes.MDB";
      string strAccessSelect = "SELECT * FROM Categories";

      //Create the dataset and add the Categories table to it
      DataSet myDataSet = new DataSet();
      myDataSet.Tables.Add("Categories");
      
      // create my Access objects
      ADOConnection myAccessConn = new ADOConnection(strAccessConn);
      ADODataSetCommand myAccessDataSetCmd = new ADODataSetCommand();
      myAccessDataSetCmd.SelectCommand = new ADOCommand(strAccessSelect,myAccessConn);

      myAccessConn.Open();
      try
      {
         myAccessDataSetCmd.FillDataSet(myDataSet,"Categories");
      }
      finally
      {
         myAccessConn.Close();
      }

      try
      {
         /* A dataSet can contain multiple tables,
           so let's get them all into an array */
         DataTable[] dta = myDataSet.Tables.All;
         foreach (DataTable dt in dta)
         {
            Console.WriteLine("Found data table {0}", dt.TableName);
         }
         
         /* The next two lines show two different ways
            you can get the count of tables in a dataset */
         Console.WriteLine("{0} tables in data set", myDataSet.Tables.Count);
         Console.WriteLine("{0} tables in data set", dta.Length);
         /* The next several lines show how to get information
            on a specific table by name from the dataset */
         Console.WriteLine("{0} rows in Categories table", myDataSet.Tables["Categories"].Rows.Count);
         /* The column info is automatically fetched from the
            database, so we can read it here */
         Console.WriteLine("{0} columns in Categories table", myDataSet.Tables["Categories"].Columns.Count);
         DataColumn[] drc = myDataSet.Tables["Categories"].Columns.All;
         int i = 0;
         foreach (DataColumn dc in drc)
         {
            /* Print the column subscript, then the
               column's name and its data type */
            Console.WriteLine("Column name[{0}] is {1}, of type {2}",i++ , dc.ColumnName, dc.DataType);
         }
         DataRow[] dra = myDataSet.Tables["Categories"].Rows.All;
         foreach (DataRow dr in dra)
         {
            /* Print the CategoryID as a subscript,
               then the CategoryName */
            Console.WriteLine("CategoryName[{0}] is {1}", dr[0], dr[1]);
         }
      }
      catch (Exception e)
      {
         Console.WriteLine("Oooops.  Caught an exception:\n{0}", e.Message);
      }
   }
}
                 

关键字词: