程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> ADO.NET基礎鞏固之連接類

ADO.NET基礎鞏固之連接類

編輯:關於.NET

      最近的一段時間自己的狀態還是不錯的,早上,跑步,上自習看書,下午宿捨裡面編程實戰,晚上要麼練習代碼,要麼去打球(在不打就沒機會了),生活還是挺豐富的。

關於C#的基礎回顧就先到前面哪裡,這些要自己在工作中慢慢的去體會,不是說看書就可以掌握的。我們都是從學生時代過來的知道每個人的學習情況是不一樣的,所以找到自己的學習節奏是最好不過的。

下面是關於訪問數據庫[ADO.NET]的學習,之前剛開始學習的時候把這些基本的都過了一遍,但是長時間不使用,一些基本的用法還是會遺忘的。

    一:關於ADO.NET中基本名稱的解釋

     現在我才知道ADO.NET裡面分為連接類和斷開連接類兩種,這些都是從一些基本的關鍵字(就先這麼叫)來區分的。

     連接類:

                   Connection,  Command,  DataReader和 DataAdapter

     連接類可以提取和更新底層數據源中的數據。每個數據提供程序負責實現連接類。

  • Connection

          Connection對象表示與數據源的一次單獨的會話,Connection類指定了連接到數據源必須的驗證信息。

  • Command

          Command對象使用一個已建立的Connection對象,對數據源執行SQL語句和存儲過程。CommandText屬性包含了對數據源所執行的sql語句。

  • DataReader

          DataReader提供了對結果集的只前,只讀的訪問。DataReader對象提供了訪問數據的最佳性能,避免了DataSet相關聯的開銷。可以通過執行Command類的ExecuteReader()方法創建一個DataReader對象。我們可以通過這個對象讀取到裡面具體的值。裡面有個.reader()方法我們可以通過這個來得到。

image

  • DataAdapter

         DataAdapter通過從數據源提取數據,並填充一個(斷開連接)的DataSet/DataTable,這個也可以進行更新,反著來。

     斷開連接類:

                    DataSet, DataTable, DataColumn,DataRow, DataView, DataRelation和Constraint.

     斷開連接類可以對於連接類提供的數據進行離線的訪問和操作,以後在使用與底層的數據源進行同步。

  • DataSet

      DataSet是存儲在內存中的一個斷開連接的關系數據庫(不和本地的有任何關系),提供高級浏覽功能,作為其它對象的容器,包括DataTable,DataRows,DataColumn我們可以在代碼中使用這些對象。

  • DataTable

      DataTable表示加載到內存中的數據的單個表,可以獨立存在,也可以作為DataSet中的一部分。

  • DataRow

     DataRow表示DataTable中的一行數據

  • DataColumn

     DataRow表示DataTable中的一列數據

關於上面方法,屬性的基本操作

    /// <summary>
    /// 關於ADO.NET中連接類和斷開連接類的學習.
    /// </summary>
    class Program
    {
        static void Main(string[] args)
        {
            string connectionString = "";
            string sql = "";
            SqlConnection conn=new SqlConnection(connectionString);
            SqlCommand cmd=new SqlCommand(sql,conn);
            cmd.CommandType=CommandType.Text;   //這裡可以修改,要是存儲過程的話直接就修改了,這個是枚舉類型。
           
            //  1  :使用SqlDataReader來操作
            conn.Open();
            SqlDataReader dr = cmd.ExecuteReader();      //返回結果: System.Data.SqlClient.SqlDataReader 對象。
            dr.Read();
            //下面就可以取出我們需要的數據了,要是需要多次while()來循環.
            string data1=dr.GetString(0); //一次出現一行數據。
            conn.Close();
            dr.Close();
          
            //  2 : 使用SqlDataApadter來操作
            conn.Open();
            //聲明DataTable和DataSet它們是斷開連接類,相當於本地的數據庫一樣。
            DataTable table = new DataTable();
            DataSet ds=new DataSet();
            SqlDataAdapter da=new SqlDataAdapter(cmd);
            da.Fill(table);       //把數據加載到DataTable中,
            da.Fill(ds);          //把數據加載到DataSet中,
            conn.Close();
            //我們可以在上面關閉的情況下,在DataTable和DataSet中找到數據來使用。

            // 3 :關於cmd的一些常用的方法。
            //    ExecuteScalar()+ 執行查詢,並返回查詢所返回的結果集中第一行的第一列。 忽略其他列或行。
            object rowColumn = cmd.ExecuteScalar();

            //    ExecuteNonQuery()  +對連接執行 Transact-SQL 語句並返回受影響的行數。
            int row=cmd.ExecuteNonQuery();

            //    ExecuteReader()   +將 CommandText 發送到 Connection並生成一個 SqlDataReader並返回。
            SqlDataReader sqa = cmd.ExecuteReader();
            conn.Close();
        }
    }
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved