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

ADO.NET編程之基礎知識

編輯:ASP.NET基礎

一.ADO.NET基礎

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

ADO.NET中通過SqlConnection類創建到SQL Server的鏈接,Sqlconnection代表一個數據庫的鏈接,ADO.NET中的鏈接等資源都實現了IDisposable接口。

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

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

現在來測試一下,連接數據庫是否成功了。

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

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

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

測試效果圖:

最後我們來看看SqlConnection對象的內部原理吧:使用反編譯工具reflector就可以;

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

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

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

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

4.Component類:

看得出來這個類,也實現了IDisposable接口哦,

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

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

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

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved