c 連線資料庫

2022-03-10 04:32:47 字數 3428 閱讀 6433

參考

對於不同的.net資料提供者,ado.net採用不同的connection物件連線資料庫。這些connection物件為我們遮蔽了具體的實現細節,並提供了一種統一的實現方法。

connection類有四種:sqlconnection,oledbconnection,odbcconnection和oracleconnection。

sqlconnection類的物件連線sql server資料庫;oracleconnection 類的物件連線oracle資料庫;oledbconnection類的物件連線支援ole db的資料庫,如access;而odbcconnection類的物件連線任何支援odbc的資料庫。與資料庫的所有通訊最終都是通過 connection物件來完成的。

(1)用sqlconnection連線sql server

加入命名空間:using system.data.sqlclient;

sqlconnection myconnection = new sqlconnection(constring);

myconnection.open();

(2)用oracleconnection連線oracle

加入命名空間:using system.data.oracleclient;

oracleconnection myconnection = new oracleconnection(constring);

myconnection.open();

(3)用 mysqlconnection連線mysql

在.net中連線mysql資料庫有兩種方法:mysql connector/odbc 和 mysql connector/net,odbc聯結器是符合odbc標準的互動平台,是.net訪問mysql資料庫最好的選擇。

c:\program files\mysql\mysql connector net

5.1.5\binaries\.net2.0中找到mysql.data.dll,將該檔案複製到專案的bin目錄下。並且在專案中新增引用

mysql.data.dll。實現**如下:

加入命名空間:using mysql.data.mysqlclient;

mysqlconnection myconnection = new mysqlconnection(constring);

myconnection.open();

(4)用oledbconnection連線各種資料來源

由於資料來源不同,相應的連線字串也會不同。

加入命名空間:using system.data.oledb;

連線 sql server:  string constring = "provider=sqloledb.1; persist

security info=false; user id=使用者名稱; database=資料庫名; data

source=computer; ";

oledbconnection myconnection = new oledbconnection(constring);

myconnection.open();

連線 access:  string constring = "provider=microsoft.jet.oledb.4.0;  data source=c:\\database1.mdb; persist security info=false;";

oledbconnection myconnection = new oledbconnection(constring);

myconnection.open();

(也可以通過建立.udl檔案來獲得字串)

連線 oracle:  string constring = "provider=msdaora;  user id=使用者名稱; password=密碼; data source=db; persist security info=false;";

oledbconnection myconnection = new oledbconnection(constring);

myconnection.open();

(也可以通過oracleconnection連線)

注意:使用不同的connection物件需要匯入不同的命名空間。oledbconnection的命名空間

為system.data.oledb。sqlconnection的命名空間為system.data.sqlclient。

oracleconnection的命名空間為system.data.oracleclinet。

我們就可以使用如下兩種方式連線資料庫,即採用整合的windows驗證和使用sql server身份驗證進行資料庫的登入。

1、整合的windows身份驗證語法範例

string constr = "server=.;database=myschool;integrated security=sspi";

說明:程式**中,設定了乙個針對sql server資料庫的連線字串。其中server表示執行sql

server的計算機名,由於程式和資料庫系統是位於同一臺計算機的,所以我們可以用.(或localhost)取代當前的計算機名。database表

示所使用的資料庫名(myschool)。由於我們希望採用整合的windows驗證方式,所以設定 integrated

security為sspi即可。

2、sql server 2005中的windows身份驗證模式如下:

string constr = "server=.;database=myschool;uid=sa;pwd=sa";

說明:程式**中,採用了使用已知的使用者名稱和密碼驗證進行資料庫的登入。資料庫連線字串是不區分大小寫的。uid為指定的資料庫使用者名稱,pwd為

指定的使用者口令。為了安全起見,一般不要在**中包括使用者名稱和口令,你可以採用前面的整合的windows驗證方式或者對web.config檔案中的連

接字串加密的方式提高程式的安全性。

3、sql server 2005中的sql server身份驗證模式如下:

string constr = "data source=.;initial catalog=myschool;user id=sa;pwd=sa";

說明:程式**中data source 表示執行資料庫對應的計算機名,initial catalog表示所使用的資料庫名。uid為指定的資料庫使用者名稱,pwd為指定的使用者口令。

4、access資料庫的連線字串的形式如下:

string connectionstring =@"provider=microsoft.jet.oledb.4.0;data source=c:\datasource\myschool.mdb";

C 連線資料庫

using system using system.data using system.data.sqlclient using system.windows.forms namespace testc public void open catch exception e public void c...

c 連線資料庫

根據查詢結果儲存在資料庫伺服器端還是本地客戶端,可分兩種連線資料庫的方式 那麼這兩種方式的好壞 查詢結果儲存在資料庫伺服器 之所以要儲存在資料庫伺服器端,是因為一旦查詢結果資料量大,如果儲存在本地會占用大量的記憶體,所以該方式的優點是不佔記憶體。但對 於 資料量小情況下,還要時刻與資料庫保持連線,一...

C 連線資料庫

用sqlconnection連線sql server資料庫 引用 using dystem.data.sqlclient string constring data source ip位址 initial catalog 資料庫名稱 user id 使用者名稱 password 密碼 persist...