資料庫的連線

嚴文文-Chris發表於2017-12-09

一、使用OleDbConnection物件連線OLEDB資料來源

1.連線Access 資料庫

Access 2000:“provider=Microsoft.Jet.Oledb.3.5;Data Source=Access檔案路徑”

Access 2003:“provider=Microsoft.Jet.Oledb.4.0;Data Source=Access檔案路徑”

Access 2007:“provider=Microsoft.Ace.Oledb.12.0;Data Source=Access檔案路徑”

備註:Access資料庫只提供兩個連線屬性provider(資料提供程式)和datasource(資料來源);

Access2000\2003的檔案格式是“.mdb”,,Access2007的檔案格式是“.accdb”;

Access的資料提供程式版本是向下相容的,在Win7下測試使用Microsoft.Jet.OLEDB.3.5提示“未在本地計算機上註冊“Microsoft.Jet.OLEDB.3.5”提供程式。”,改用Microsoft.Jet.OLEDB.4.0或者Microsoft.Ace.OLEDB12.0完全可以訪問Access2000的資料庫檔案。當然也可以嘗試使用微軟提供的MDAC來修改provider的版本。

2.連線Excel資料庫

Excel 2003:“provider=Microsoft.Jet.OLEDB.4.0;Data Source=Access檔案路徑;extendedproperties=excel 8.0”

Excel 2007:“provider=Microsoft.Ace.OLEDB.12.0;Data Source=Access檔案路徑;extendedproperties=excel 12.0”

備註:在程式碼中引用工作表時,應將表名錶示為“[工作表名$]”,遇到欄位為資料庫保留關鍵字時,給該欄位名加上[]以示區別,如定義select語句時:string connStr=”select * from [login$] where username=’abc’ and[password]=’abc123’ ”;

如果在資料表中用數字作為文字型別資料時,則應在數字前加單引號將預設的數值強行設定為文字型別。

3.連線SQLServer資料庫

provider=SQLOLEDB;  DataSource=伺服器名;  Initial Catalog=資料庫名;  uid=使用者;  pwd=密碼 

 

二、使用SqlConnection物件連線SQLServer資料庫

宣告:以下連線的屬性都可以參考“SQL Server資料庫連線字串引數一覽表”取它的別名;除了必須設定的屬性以外還可以設定其他輔助的屬性。如Connect Timeout、Encrypt等

設定資料庫檔案路徑的方法:

1.使用絕對路徑:“AttachDbFilename=D:\\Solution1\\Web\\App_Data\\data.mdf”

2.使用伺服器相對路徑:“AttachDbFilename=”+Server.MapPath(“\\App_Data\\data.mdf”)

3.使用最簡單的相對路徑:“AttachDbFilename=|DataDirectory|\\data.mdf”

推薦使用第3種方式,“|DataDirectory|”代表ASP.NET專案裡自動建立的App_Data資料夾

1.以SQLServer驗證模式連線SQLServer

(1)以資料庫名連線方式

Server=伺服器名; Database=資料庫名稱;  User ID=使用者名稱;  Password=密碼 或者(使用縮寫與別名)

Server=伺服器名;   InitialCatalog=資料庫名稱;  Uid=使用者;  Pwd=密碼 

(2)以資料庫檔案完整路徑連線方式

“Serve=伺服器名;AttachDbFilename=資料庫檔案路徑;UserID=使用者名稱;Password=密碼”

示例:

Server=.\SQLEXPRESS;Database=DatabaseName; User ID =sa; Password=abc123”  Server=.\SQLEXPRESS;Initial Catalog =DatabaseName; Uid =sa; Pwd=abc123” Server=(local)\SQLEXPRESS; 

AttachDbFilename=D:\\Solution1\\Web\\App_Data\\data.mdf;UserID =sa; Password=abc123” 

備註:密碼可以為空。

2.以Windows驗證模式連線SQL Server

(1)以資料庫名連線方式

Server=伺服器名; Database=資料庫名稱;  Integrated Security=SSPI

 (2)以資料庫檔案完整路徑連線方式

“Serve=伺服器名;AttachDbFilename=資料庫檔案路徑;Integrated Security=true”

示例:

Server=伺服器名; Database=資料庫名稱;  Integrated Security=SSPI Server=(local)\SQLEXPRESS;  AttachDbFilename=D:\\Solution1\\Web\\App_Data\\data.mdf;  IntegratedSecurity=true” 備註:SSPI即為true

 

三、使用OdbcConnection物件連線ODBC資料來源

“Driver=資料庫提供程式名;Server=伺服器名;Database=資料庫名;Trusted_Connection=yes”

示例:

首先要在計算機管理à資料來源à配置好相對應的資料來源(選擇資料庫型別,設定資料庫檔案路徑與相對應的資料庫名)

Driver= Microsoft.Jet.OLEDB.4.0; Server=.\SQLEXPRESS;   Database=DatabaseName; Trusted_Connection=yes

 四、使用OracleConnection物件連線Oracle資料庫

Data Source=Oracle8i; Integrated Security=yes 

 

五、在ASP.NET專案中的web.config檔案裡配置資料庫連線並在程式程式碼中獲取連線字串

1.在<connectionStrings>標籤裡新增連線

<connectionStrings>  <add name="ConnectionName"connectionString="Server=.\SQLEXPRESS;Database=DatabaseName;UserID=sa;Password=abc123"  providerName="System.Data.SqlClient" />   </connectionStrings>或者

<connectionStrings>  <add name="ConnectionName"connectionString="Server=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\data.mdf;IntegratedSecurity=true" providerName="System.Data.SqlClient" />  </connectionStrings> 在程式程式碼中獲取<connectionStrings> 標籤裡的連線字串:

引用名稱空間:

Using System.Configuration ; string connStr =ConfigurationManager.ConnectionStrings["ConnectionName"].ToString();

 2.在<appSettings>標籤裡新增連線

<appSettings>  <addkey="ConnectionName"value="Server=.\SQLEXPRESS;Database=DatabaseName;UserID=sa;Password=abc123" />  </appSettings> 或者

<appSettings>  <addkey="ConnectionName"  value="Server=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\data.mdf;IntegratedSecurity=True" />  </appSettings>在程式程式碼中獲取<appSettings> 標籤裡的連線字串:

引用名稱空間:

Using System.Configuration ; string connStr =ConfigurationManager.AppSettings["ConnectionName"].ToString();

 

這篇轉載介紹的比較詳細,歡迎提出寶貴建議!

相關文章