怎么在C#中使用Connection類操作數(shù)據(jù)庫(kù)

怎么在C#中使用Connection類操作數(shù)據(jù)庫(kù)?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

10年積累的網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有盧龍免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

四種類型的連接方式

  1. SQLConnection

  2. ADOConnection

  3. OractleConnection

  4. ODBCConnection

以SQLConnection方式實(shí)現(xiàn)數(shù)據(jù)庫(kù)的連接:

  • SQL Server數(shù)據(jù)庫(kù)

  • windows 身份信息驗(yàn)證

步驟:

  1. 引用命名空間 using System.Data.SqlClient;

  2. 將連接方法聲明值字符串中

  3. 創(chuàng)建Connection對(duì)象

  4. 調(diào)用方法

為了節(jié)省系統(tǒng)資源提高系統(tǒng)性能,最好使用完數(shù)據(jù)庫(kù)就關(guān)閉連接,在C#語(yǔ)言中由于GC(垃圾回收機(jī)制)的存在,會(huì)在以后的某個(gè)時(shí)刻釋放資源,它是非決定性的,并不能確定這個(gè)過(guò)程在什么時(shí)候發(fā)生,當(dāng)忘記關(guān)閉數(shù)據(jù)庫(kù)是可以u(píng)sing語(yǔ)句確保對(duì)象退出時(shí)立即被釋放,從而達(dá)到關(guān)閉數(shù)據(jù)庫(kù)的作用,還有一種通過(guò)try..catch..final..語(yǔ)句控制連接數(shù)據(jù)庫(kù)的關(guān)閉來(lái)提高性能

代碼實(shí)現(xiàn)如下:

using System;
using System.Data.SqlClient;  //引入命名空間
namespace Csharpone
{
  class Program
  {
    static void Main(string[] args)
    {
      //windows 身份信息驗(yàn)證  下面的csharp01為新建的數(shù)據(jù)庫(kù)名稱
      string constr = "Server.;integrated security=SSPI;Initial Catalog=csharp01";
      SqlConnection MySQLCon = new SqlConnection(constr); //實(shí)例化
      mysqlCon.Open(); //打開(kāi)數(shù)據(jù)庫(kù)
      Console.WriteLine("數(shù)據(jù)庫(kù)打開(kāi)");  //正常打印說(shuō)明沒(méi)問(wèn)題,否則會(huì)拋出異常
      //SQ驗(yàn)證方式 name是你設(shè)置的數(shù)據(jù)庫(kù)的用戶名,pwd是密碼 csharp02是數(shù)據(jù)庫(kù)名稱
      string constr1 = "Server.;user=name; pwd=mima; database=csharp02";
      SqlConnection mysqlCon1 = new SqlConnection(constr1); //實(shí)例化
      mysqlCon1.Open(); //打開(kāi)數(shù)據(jù)庫(kù)
      Console.WriteLine("SQL方式 數(shù)據(jù)庫(kù)打開(kāi)");
 /*通過(guò)using語(yǔ)句實(shí)現(xiàn)數(shù)據(jù)庫(kù)的關(guān)閉
      using (mysqlCon1) {
        mysqlCon1.Open();
        Console.WriteLine("數(shù)據(jù)成功打開(kāi)");  //執(zhí)行完立即關(guān)閉
      }
      //通過(guò)try..catch..finally..
      try
      {
        mysqlCon.Open();
        Console.WriteLine("數(shù)據(jù)庫(kù)關(guān)閉");
      }
      catch
      {
      }
      finally
      {
        mysqlCon.Close();
        Console.WriteLine("關(guān)閉數(shù)據(jù)庫(kù)");
      }*/
//以上兩種方式結(jié)合使用,確保數(shù)據(jù)庫(kù)占用資源得到釋放
      try
      {
        using (mysqlCon)
        {
          mysqlCon.Open();
   Console.WriteLine("打開(kāi)數(shù)據(jù)庫(kù)");
        }
      }
      catch
      {
      }
      finally
      {
        mysqlCon.Close();
     Console.WriteLine("關(guān)閉數(shù)據(jù)庫(kù)");
      }
      Console.Read();
    }
  }
}

MySQL數(shù)據(jù)庫(kù)代碼如下:

using System;
using MySql.Data.MySqlClient;  //導(dǎo)入引用,并且添加命名空間
namespace CSharp連接Mysql
{
  class Program
  {
    static void Main(string[] args)
    {
      string connectStr = "server=localhost;port=3306;database=czhenya01;user=root;password=123456;";
      //并沒(méi)有建立數(shù)據(jù)庫(kù)連接
      MySqlConnection conn = new MySqlConnection(connectStr);
      try
      {
        conn.Open();  //建立連接,打開(kāi)數(shù)據(jù)庫(kù)
        Console.WriteLine("打開(kāi)數(shù)據(jù)庫(kù)成功");
      }catch (Exception ex)
      {
        Console.WriteLine(ex.ToString());
      }
      finally
      {
        conn.Close();  //關(guān)閉連接
      }      
      Console.ReadKey();
    }
  }
}

關(guān)于怎么在C#中使用Connection類操作數(shù)據(jù)庫(kù)問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

本文題目:怎么在C#中使用Connection類操作數(shù)據(jù)庫(kù)
當(dāng)前網(wǎng)址:http://bm7419.com/article16/geisdg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序響應(yīng)式網(wǎng)站、定制網(wǎng)站、做網(wǎng)站、云服務(wù)器、品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁(yè)設(shè)計(jì)