C#連接SQL Server數據庫的實例講解
C#連接數據庫:Connection對象
1.Connection對象概述
Connection對象是一個連接對象,主要功能是建立與物理數據庫的連接。其主要包括4種訪問數據庫的對象類,也可稱為數據提供程序,分別介紹如下。
- SQL Server數據提供程序,位于System.Data.SqlClient命名空間。
- ODBC數據提供程序,位于System.Data.Odbc命名空間。
- OLEDB數據提供程序,位于System.Data.OleDb命名空間。
- Oracle數據提供程序,位于System.Data.OracleClient命名空間。
說明:根據使用數據庫的不同,引入不同的命名空間,然后通過命名空間中的Connection對象連接類連接數據庫。例如,連接SQL Server數據庫,首先要通過using System.Data.SqlClient命令引用SQL Server數據提供程序,然后才能調用空間下的SqlConnection類連接數據庫。
2.連接數據庫
以SQL Server數據庫為例,如果要連接SQL Server數據庫,必須使用System.Data.SqlClient命名空間下的SqlConnection類。所以首先要通過using System.Data.SqlClient命令引用命名空間,連接數據庫之后,通過調用SqlConnection對象的Open方法打開數據庫。通過SqlConnection對象的State屬性判斷數據庫的連接狀態(tài)。
界面:

代碼:
private void btn1_Click(object sender, EventArgs e) { if (txt1.Text == "") { MessageBox.Show("請輸入要連接的數據庫名稱!"); } else { try { string connString = "server=.;database=" + txt1.Text.Trim() + ";uid=test;pwd=test;connect timeout=5"; //** SqlConnection sqlConnection = new SqlConnection(connString); //** sqlConnection.Open(); //** if (sqlConnection.State == ConnectionState.Open) { lab2.Text = "數據庫【" + txt1.Text.Trim() + "】已經連接并打開!"; } } catch { MessageBox.Show("數據庫連接失敗!"); } } }
3.關閉連接
當對數據庫操作完畢后,要關閉與數據庫的連接,釋放占用的資源。可以通過調用SqlConnection對象的Close方法或Dispose方法關閉與數據庫的連接。這兩種方法的主要區(qū)別是:Close方法用于關閉一個連接,而Dispose方法不僅關閉一個連接,而且還清理連接所占用的資源。當使用Close方法關閉連接后,可以再調用Open方法打開連接,不會產生任何錯誤。而如果使用Dispose方法關閉連接,就不可以直接用Open方法打開連接,必須再次重新初始化連接再打開。
界面:
代碼:
SqlConnection sqlConnection; //*** /// <summary> /// 連接數據庫 /// </summary> private void btn1_Click_1(object sender, EventArgs e) { if (txt1.Text == "") { MessageBox.Show("請輸入數據庫名稱:"); } else { try { string connString = "server=.;database=" + txt1.Text.Trim() + ";uid=test;pwd=test;connect timeout=5"; //*** sqlConnection = new SqlConnection(connString); //*** sqlConnection.Open(); //*** if (sqlConnection.State == ConnectionState.Open) { btn1.Text = "連接成功"; } } catch(Exception ex) { MessageBox.Show(ex.Message); txt1.Text = ""; } } } /// <summary> /// 使用Close方法關閉連接并重新調用Open方法連接數據庫 /// </summary> private void btn2_Click(object sender, EventArgs e) { try { string str = ""; sqlConnection.Close(); //*** if (sqlConnection.State == ConnectionState.Closed) { str = "數據庫已經成功關閉\n"; } sqlConnection.Open(); //*** if (sqlConnection.State == ConnectionState.Open) { str += "數據庫已經成功打開\n"; } rtbox1.Text = str; } catch (Exception ex) { rtbox1.Text = ex.Message; } } /// <summary> /// 使用Dispose方法關閉連接并重新調用Open方法連接數據庫 /// </summary> private void btn3_Click(object sender, EventArgs e) { try { sqlConnection.Dispose(); //*** sqlConnection.Open(); //*** } catch (Exception ex) { rtbox1.Text = ex.Message; } }
以上就是本次介紹的全部知識點內容,感謝大家的學習和對腳本之家的支持。
相關文章
c# List find()方法返回值的問題說明(返回結果為對象的指針)
本篇文章主要介紹了c#中List find()方法返回值的問題說明(返回結果為對象的指針) 需要的朋友可以過來參考下,希望對大家有所幫助2014-01-01C# winfroms使用socket客戶端服務端的示例代碼
這篇文章主要為大家詳細介紹了C# winfroms使用socket客戶端服務端的相關知識,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下2024-02-02