主頁 > 知識庫 > ADO.NET編程之基礎(chǔ)知識

ADO.NET編程之基礎(chǔ)知識

熱門標(biāo)簽:硅谷的囚徒呼叫中心 地方門戶網(wǎng)站 阿里云 科大訊飛語音識別系統(tǒng) 服務(wù)器配置 集中運(yùn)營管理辦法 百度競價排名 網(wǎng)站排名優(yōu)化

一.ADO.NET基礎(chǔ)

程序和數(shù)據(jù)庫交互,要通過ADO.NET進(jìn)行;通過ADO.NET就能在數(shù)據(jù)庫中執(zhí)行SQL了。ADO.NET中提供了對不同數(shù)據(jù)庫的統(tǒng)一操作接口(ODBC)。另外還有一種操作數(shù)據(jù)庫的接口是JDBC。

ADO.NET中通過SqlConnection類創(chuàng)建到SQL Server的鏈接,Sqlconnection代表一個數(shù)據(jù)庫的鏈接,ADO.NET中的鏈接等資源都實現(xiàn)了IDisposable接口。

實現(xiàn)了IDisposable接口的對象,在使用完了,要進(jìn)行資源的釋放。調(diào)用Dispose()方法。

連接方式訪問數(shù)據(jù)庫,連接要打開,使用完要關(guān)閉。關(guān)閉之后,還可以再打開,這就是Close和Dispose的區(qū)別。Dispose(),是完全釋放資源。

現(xiàn)在來測試一下,連接數(shù)據(jù)庫是否成功了。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//使用ADO.NET技術(shù),必須要導(dǎo)入這兩個命名空間
using System.Data;
using System.Data.SqlClient;
//
namespace ADO.NET1
{
  class Program
  {
    static void Main(string[] args)
    {
      //創(chuàng)建數(shù)據(jù)庫連接(連接字符串)
      string sqlCon = "server=.;database=DB_MyStudentLife;uid=sa;pwd=Password_1";
      SqlConnection scon = new SqlConnection(sqlCon);

      //打開數(shù)據(jù)庫連接
       scon.Open();

      //測試,判斷數(shù)據(jù)庫的連接狀態(tài)
      if (scon.State == ConnectionState.Closed)
      {
        
        Console.WriteLine("連接數(shù)據(jù)庫失敗");
      }
      if (scon.State == ConnectionState.Open)
      {
        Console.WriteLine("成功打開連接數(shù)據(jù)庫,連接成功");
      }
      Console.ReadKey();
    }
  }
}

測試效果圖:

最后我們來看看SqlConnection對象的內(nèi)部原理吧:使用反編譯工具reflector就可以;

1.從圖中,我們看出來,SqlConnection繼承了DbConnection類,實現(xiàn)了ICloneable接口

2.ICloneable接口里面是啥樣子呢,我們來看一下,反編譯:

3.接下來,我們看下Dbconnection類:

從圖中可以看出,Dbconnection類是一個抽象類,繼承了Component類,實現(xiàn)了IDbConnection接口,和IDisposable接口,下面我們分別來看看這幾個

4.Component類:

看得出來這個類,也實現(xiàn)了IDisposable接口哦,

好了,其他還是來看看IDisposable接口內(nèi)部的神秘面紗吧:

看得出來,IDisosable定義了一個Dispose(),抽象無返回值的方法。

以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。

您可能感興趣的文章:
  • ADO.NET EF中的實體修改方法
  • ADO.NET 連接數(shù)據(jù)庫字符串小結(jié)(Oracle、SqlServer、Access、ODBC)
  • ADO.NET實體數(shù)據(jù)模型詳細(xì)介紹
  • ADO.NET中的五個主要對象的詳細(xì)介紹與應(yīng)用
  • ADO.Net 類型化DataSet的簡單介紹
  • ADO.NET之連接池技術(shù)的使用詳解
  • ASP.NET中實現(xiàn)把Json數(shù)據(jù)轉(zhuǎn)換為ADO.NET DataSet對象
  • ADO.NET基礎(chǔ)知識匯總

標(biāo)簽:威海 廣西 開封 梧州 烏蘭察布 西雙版納 隨州 甘孜

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《ADO.NET編程之基礎(chǔ)知識》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266