国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
C# 讀取 Access 數(shù)據(jù)庫(kù)表的例子

?using System;
using System.Data;
using System.Data.OleDb;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace A0150_Access.Sample
{


    /// <summary>
    /// 用于 訪問(wèn) Access 數(shù)據(jù)庫(kù)的例子.
    ///
    ///
    /// </summary>
    class ReadAccessDB
    {

        /// <summary>
        /// Access 的數(shù)據(jù)庫(kù)連接字符串.
        /// </summary>
        private const String connString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\TeamMemberManager.mdb";

        /// <summary>
        /// 用于查詢(xún)的 SQL 語(yǔ)句.
        /// </summary>
        private const String SQL = "SELECT member_type_code, member_type_name FROM team_member_type";


        /// <summary>
        /// DataSet 導(dǎo)出的文件
        /// </summary>
        private const String DATATABLE_XML_FILE = "datatable.xml";
        private const String DATATABLE_SCHEMA_XML_FILE = "datatable_schema.xml";


        /// <summary>
        /// 將數(shù)據(jù)讀取到 DataSet 中.
        ///
        /// 這里演示了2種方式,一種是從數(shù)據(jù)庫(kù)中讀取,一種是從XML文件中讀取.
        ///
        /// 作為對(duì)比,還可以參考 A0210_DataSetXML 項(xiàng)目下的 DataSetReadXml 類(lèi),那里的讀取方式,與這里有些差異。
        /// </summary>
        public void ReadDataToDataSet()
        {

            Console.WriteLine("使用DataAdapter,將數(shù)據(jù)填充到DataSet中,然后脫離數(shù)據(jù)庫(kù),直接對(duì)DataSet進(jìn)行處理。");

            // 建立數(shù)據(jù)庫(kù)連接.
            OleDbConnection conn = new OleDbConnection(connString);

            // 創(chuàng)建一個(gè)適配器
            OleDbDataAdapter adapter = new OleDbDataAdapter(SQL, conn);

            // 創(chuàng)建DataSet,用于存儲(chǔ)數(shù)據(jù).
            DataSet testDataSet = new DataSet();

            // 執(zhí)行查詢(xún),并將數(shù)據(jù)導(dǎo)入DataSet.
            adapter.Fill(testDataSet, "team_member_type");

            // 關(guān)閉數(shù)據(jù)庫(kù)連接.
            conn.Close();
           


            // 處理DataSet中的每一行數(shù)據(jù).
            foreach (DataRow testRow in testDataSet.Tables["team_member_type"].Rows)
            {
                // 將檢索出來(lái)的數(shù)據(jù),輸出到屏幕上.
                Console.WriteLine("ID: {0}   Name: {1}",
                    testRow["member_type_code"], testRow["member_type_name"]
                    );
            }

            // 注意:
            //    在通過(guò) DataTable 的 WriteXml 方法來(lái)導(dǎo)出數(shù)據(jù),給其他系統(tǒng)使用的時(shí)候
            //    還需要使用 WriteXmlSchema 來(lái)導(dǎo)出 Schema
            //    否則在使用 ReadXml 讀取的時(shí)候, 會(huì)發(fā)生錯(cuò)誤,因?yàn)樾碌?DataTable 不知道表的結(jié)構(gòu),不知道該如何去讀取.
            //    除非你手動(dòng)設(shè)置好每個(gè)列的字段/數(shù)據(jù)類(lèi)型等信息,那么 DataSet 或者 DataTable 將能夠理解如何倒入,而不在需要 ReadXmlSchema
            Console.WriteLine("將 DataTable 的數(shù)據(jù),寫(xiě)入到 XML 文件中。");
            testDataSet.Tables["team_member_type"].WriteXmlSchema(DATATABLE_SCHEMA_XML_FILE);
            testDataSet.Tables["team_member_type"].WriteXml(DATATABLE_XML_FILE);


            Console.WriteLine("從 XML 文件中,讀取數(shù)據(jù)到 DataTable 里面。");
            DataTable newDt = new DataTable();
            newDt.ReadXmlSchema(DATATABLE_SCHEMA_XML_FILE);
            newDt.ReadXml(DATATABLE_XML_FILE);


            // 輸出 DataTable 信息。
            foreach (DataRow testRow in newDt.Rows)
            {
                // 將檢索出來(lái)的數(shù)據(jù),輸出到屏幕上.
                Console.WriteLine("ID: {0}   Name: {1}",
                    testRow["member_type_code"], testRow["member_type_name"]
                    );
            }
        }


        /// <summary>
        /// 通過(guò) Reader, 依次讀取每一條數(shù)據(jù).
        /// </summary>
        public void ReadDataByReader()
        {
            Console.WriteLine("使用DataReader,逐行對(duì)查詢(xún)結(jié)果進(jìn)行處理。[處理過(guò)程必須保持?jǐn)?shù)據(jù)庫(kù)連接正常]");

            // 建立數(shù)據(jù)庫(kù)連接.
            OleDbConnection conn = new OleDbConnection(connString);

            // 打開(kāi)連接.
            conn.Open();

            // 創(chuàng)建一個(gè) Command.
            OleDbCommand testCommand = conn.CreateCommand();

            // 定義需要執(zhí)行的SQL語(yǔ)句.
            testCommand.CommandText = SQL;

            // 執(zhí)行SQL命令,結(jié)果存儲(chǔ)到Reader中.
            OleDbDataReader testReader = testCommand.ExecuteReader();

            // 處理檢索出來(lái)的每一條數(shù)據(jù).
            while (testReader.Read())
            {
                // 將檢索出來(lái)的數(shù)據(jù),輸出到屏幕上.
                Console.WriteLine("ID: {0}   Name: {1}",
                    testReader["member_type_code"], testReader["member_type_name"]
                    );
            }

            // 關(guān)閉Reader.
            testReader.Close();

            // 關(guān)閉數(shù)據(jù)庫(kù)連接.
            conn.Close();

        }

    }


}

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶(hù)發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
ADO.NET
C#數(shù)據(jù)庫(kù)編程
DataSet與DataReader的區(qū)別解讀
c#數(shù)據(jù)庫(kù)操作
C#中怎樣連接數(shù)據(jù)庫(kù)并將查詢(xún)結(jié)果轉(zhuǎn)為實(shí)體類(lèi)以及如何加入事務(wù)
c# mysql數(shù)據(jù)庫(kù)連接(我碰到的問(wèn)題)
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服