足彩篮彩哪里买 篮彩神棍区手机版 nba篮彩怎么玩 1月5日篮彩 篮彩大小分攻略 篮彩分析网站 1.79完美篮彩大极品 篮彩预测分析专家推荐 足彩篮彩解盘分析 篮彩竞彩 篮彩分析捷报 网易篮彩 1.79火龙大极品篮彩版 篮彩大小分什么意思 nba篮彩篮球彩票

IT職業教育

華中地區北大青鳥校區IT集訓營

027-87807717

北大青鳥首頁 > 熱門IT技術教程 > .Net技術教程 > > .NET技術教程之ADO.NET學習技巧集錦

.NET技術教程之ADO.NET學習技巧集錦

時間:2012-07-05 09:57 來源:北大青鳥武漢宏鵬魯廣校區作者:027hpedu
導讀:.NET技術教程之ADO.NET學習技巧集錦旨在幫助大家更好地掌握NET技術。北大青鳥武漢宏鵬魯廣校區從ADO.NET學習的原因、方法和要注意的知識點進行詳細解釋。

  .NET技術教程之ADO.NET學習技巧集錦旨在幫助大家更好地掌握NET技術。北大青鳥武漢宏鵬魯廣校區從ADO.NET學習的原因、方法和要注意的知識點進行詳細解釋。

  為什么要學ADO.NET

  方便使用C#代碼語句對數據庫表做相應的操作. 有時候,要對數據庫表里的數據進行批量處理,而一些SQL語句和存儲過程等編寫什么繁瑣,可以用ADO進行批量操作.

  什么是ADO.NET

  ADO.NET就是一組類庫,這組類庫可以讓我們通過程序的方式訪問數據庫,就像System.IO的類操作文本一樣,System.Data,這組類是用來操作數據庫(不光是MSSql Server),它提供了統一的編程接口讓操作其他數據庫(Access,Oracle)等的方式和操作MSSql Server 一致.

  ADO.NET組成

  ●數據提供程序

  ●Connection-----連接

  ●Command------命令 sql語句交給它執行

  ●DataReader 只讀只進的結果集-----sql語句執行完返回的數據存放在這里

  ●DataAdapter-----數據適配器

  ●數據集(DataSet)----內存里的數據庫

  ●斷開時鏈接的數據庫操作

  ADO.NET五大類圖解過程

  

 

  

 

  個對象Connection

  ●讀取數據庫數據之前先要創建一條路

  ●讀取Sql Server數據庫使用

  ●創建Sqlconnection對象    (不同的數據庫操作不同的Connection)

  ●獲取連接字符串

  ●VS視圖-服務器資源管理器-數據庫連接上點右鍵-添加連接 在新添的數據庫上點右鍵 屬性 里有連接字符串

  using System.Data.SqlClient;

  連接SQLServer數據庫

  連接字符串:程序通過連接字符串 指定要連哪臺服務器上的、哪個實例的哪個數據庫、用什么用戶名密碼等。

  ADO.Net中通過SqlConnection類創建到SQLServer的連接,SqlConnection代表一個數據庫連接,ADO.Net中的連接等資源都實現了IDisposable接口,可以使用using進行資源管理。

  第二個對象Commend

  操作Sql Server 數據庫使用SqlCommand對象

  SqlCommand表示向服務器提交一個命令(sql語句等),CommandText屬性為要執行的Sql語句,ExecuteNonQuery方法執行一個非查詢語句,(Update,Insert,Delete等)

  ● 常用的三個方法

  ExecuteNonQuery() 執行對數據庫的增刪改,返回受影響的行數

  ExecuteScalar()執行查詢,返回行列

  ExecuteReader() 執行查詢,返回DataReader對象

  異常處理

  在執行數據庫操作時,如果數據庫服務器未打開,或者sql語句寫錯了會怎么樣?

  可以使用 try....catch....finally 來捕獲異常

  使用異常處理可以保證一個功能出錯不影響另一個功能,比如添加操作失敗,不影響查詢的操作...

  ExecuteScalar

  SqlCommand的ExecuteScalar方法用于執行查詢,并返回查詢所返回的結果集中行的列,因為不能確定返回值的類型,使用返回值的object 類型.

  得到自動增長字段的主鍵值,在values關鍵詞前面加上output inserted.id,其中id為逐漸子段名,執行結果就是插入的主鍵值,用ExecuteScalar執行方便.

  ExecuteReader

  執行有多行結果集的用ExecuteReader

  DataReader 只讀只進的結果集

  HasRow屬性返回是否有行

  ExecuteReader 返回 SqlDataReader

  reader的getstring,getInt32等方法只接受整數參數,也就是序號,用GetOrdinal方法根據列明動態得到序號.

  更簡單的方法reader["UserName"]

  為什么用using,Close: 關閉以后還能打開。Dispose:直接銷毀,不能再次使用。using在出了作用域以后調用Dispose,SqlConnection,SqlDataReader等的Dispose內部都會做這樣的判斷,判斷有沒有close,如果沒有Close就先Close再Dispose.

  SQL注入漏洞攻擊

  登錄判斷: select * from T_users where Username=.....and Password=....,將參數拼到SQL語句中.

  構造惡意的Password : 'or'1' ='1

  防范注入漏洞攻擊的方法:不使用SQL語句拼接,通過參數賦值.

  DataSet

  每次讀取數據都創建連接,執行command得到SqlDataReader太麻煩,讓我們封裝一個方法吧!

  sqlDataReader是連接相關的,sqlDataReader中的查詢結果并不是放到程序中的,而是放在數據庫服務器中,SqlDataReader只是相當于放到一個指針(游標),只能讀取當前游標指向的行,一旦連接斷開就不能再讀取,這樣做的好處就是無論查詢結果有多少條,對程序占用的內存都幾乎沒有影響.

  SqlDataReader對小數據量的數據來說帶來的只有麻煩,優點可以忽略不計,ADO.Net中提供了數據集的機制,將查詢結果填充到本地內存中,這樣連接斷開,服務器斷開都不影響數據的讀取.

  DataSet dataset =new DataSet(); SqlDataAdapter adapter =new SqlDataAdapter(cmd); adapter.Fill(dataset);

  SqlDataAdapter是Dataset和數據庫之間溝通的橋梁,數據集DataSet包含若干表DataTable,DataTable包含若干行DataRow.

  .NET技術教程之ADO.NET學習技巧集錦讓更多的人對.NET學習有了更多的認識。

告訴我們,你現在想了解什么?

精彩專題——96%的同學看到這里都會點擊下面的專題

  • 關于我們
  • 魯廣校區北大青鳥宏鵬IT學院

    • 北大青鳥(武漢宏鵬)魯廣北校區地址:武漢市洪山區珞喻路724號(地鐵二號線光谷廣場站E口出)三樓
      電話:027-87807717
      網址:www.027hpit.com

    • 北大青鳥宏鵬IT學院:武漢市洪山區魯磨路568號
      電話:027-87808818
      網址:www.accp027.com

    • 北大青鳥(武漢宏鵬)魯廣南校區:武漢市洪山區珞喻路724號(地鐵二號線光谷廣場站E口出)五樓
      電話:027-87807736
      網址:www.whhpit.com

Copyright (c) 2006-2020 武漢宏鵬教育咨詢有限公司 版權所有 All Rights Reserved.

nba篮彩篮球彩票
足彩篮彩哪里买 篮彩神棍区手机版 nba篮彩怎么玩 1月5日篮彩 篮彩大小分攻略 篮彩分析网站 1.79完美篮彩大极品 篮彩预测分析专家推荐 足彩篮彩解盘分析 篮彩竞彩 篮彩分析捷报 网易篮彩 1.79火龙大极品篮彩版 篮彩大小分什么意思 nba篮彩篮球彩票