ASP.NET數(shù)據(jù)庫連接字符串總結(jié)
關(guān)于數(shù)據(jù)庫鏈接字符串的相關(guān)知識(shí),我們介紹過很多,建議大家看看這兩篇文章,《深入了解SQL Server連接字符串》和《MySql連接字符串的說明》,供參考。下面介紹ASP.NET數(shù)據(jù)庫連接字符串總結(jié)
一、使用OleDbConnection對(duì)象連接OLE DB數(shù)據(jù)源
1.連接Access 數(shù)據(jù)庫
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數(shù)據(jù)庫只提供兩個(gè)連接屬性provider(數(shù)據(jù)提供程序)和data source(數(shù)據(jù)源);
Access2000\2003的文件格式是“.mdb”,,Access2007的文件格式是“.accdb”;
Access的數(shù)據(jù)提供程序版本是向下兼容的,在Win7下測(cè)試使用Microsoft.Jet.OLEDB.3.5提示“未在本地計(jì)算機(jī)上注冊(cè)“Microsoft.Jet.OLEDB.3.5”提供程序。”,改用Microsoft.Jet.OLEDB.4.0或者M(jìn)icrosoft.Ace.OLEDB12.0完全可以訪問Access2000的數(shù)據(jù)庫文件。當(dāng)然也可以嘗試使用微軟提供的MDAC 來修改provider的版本。
2.連接Excel數(shù)據(jù)庫
Excel 2003: “provider=Microsoft.Jet.OLEDB.4.0;Data Source=Access文件路徑;extended properties=excel 8.0”
Excel 2007: “provider=Microsoft.Ace.OLEDB.12.0;Data Source=Access文件路徑;extended properties=excel 12.0”
備注:在代碼中引用工作表時(shí),應(yīng)將表名表示為“[工作表名$]”,遇到字段為數(shù)據(jù)庫保留關(guān)鍵字時(shí),給該字段名加上[]以示區(qū)別,如定義select 語句時(shí):string connStr=”select * from [login$] where username=’abc’ and [password]=’abc123’ ”;
如果在數(shù)據(jù)表中用數(shù)字作為文本類型數(shù)據(jù)時(shí),則應(yīng)在數(shù)字前加單引號(hào)將默認(rèn)的數(shù)值強(qiáng)行設(shè)定為文本類型。
3.連接SQL Server數(shù)據(jù)庫
- provider=SQLOLEDB;
- Data Source=服務(wù)器名;
- Initial Catalog=數(shù)據(jù)庫名;
- uid=用戶;
- pwd=密碼
二、使用SqlConnection對(duì)象連接SQL Server數(shù)據(jù)庫
聲明:以下連接的屬性都可以參考“SQL Server 數(shù)據(jù)庫連接字符串參數(shù)一覽表”取它的別名;除了必須設(shè)置的屬性以外還可以設(shè)置其他輔助的屬性。如Connect Timeout、Encrypt等
設(shè)置數(shù)據(jù)庫文件路徑的方法:
1.使用絕對(duì)路徑:“AttachDbFilename=D:\\Solution1\\Web\\App_Data\\data.mdf”
2.使用服務(wù)器相對(duì)路徑:“AttachDbFilename=”+Server.MapPath(“\\App_Data\\data.mdf”)
3.使用最簡(jiǎn)單的相對(duì)路徑:“AttachDbFilename=|DataDirectory|\\data.mdf”
推薦使用第3種方式,“|DataDirectory|”代表ASP.NET項(xiàng)目里自動(dòng)創(chuàng)建的App_Data文件夾
1.以SQL Server驗(yàn)證模式連接SQLServer
(1)以數(shù)據(jù)庫名連接方式
- Server=服務(wù)器名;
- Database=數(shù)據(jù)庫名稱;
- User ID=用戶名;
- Password=密碼
或者(使用縮寫與別名)
- Server=服務(wù)器名;
- Initial Catalog=數(shù)據(jù)庫名稱;
- Uid=用戶;
- Pwd=密碼
(2)以數(shù)據(jù)庫文件完整路徑連接方式
“Serve=服務(wù)器名;AttachDbFilename=數(shù)據(jù)庫文件路徑;User ID=用戶名;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;
- User ID =sa; Password=abc123”
備注:密碼可以為空。
2.以Windows 驗(yàn)證模式連接SQL Server
(1)以數(shù)據(jù)庫名連接方式
- Server=服務(wù)器名;
- Database=數(shù)據(jù)庫名稱;
- Integrated Security=SSPI
(2)以數(shù)據(jù)庫文件完整路徑連接方式
“Serve=服務(wù)器名;AttachDbFilename=數(shù)據(jù)庫文件路徑; Integrated Security=true”
示例:
- Server=服務(wù)器名;
- Database=數(shù)據(jù)庫名稱;
- Integrated Security=SSPI
- Server=(local)\SQLEXPRESS;
- AttachDbFilename=D:\\Solution1\\Web\\App_Data\\data.mdf;
- Integrated Security=true”
備注:SSPI即為true
三、使用OdbcConnection對(duì)象連接ODBC數(shù)據(jù)源
“Driver=數(shù)據(jù)庫提供程序名;Server=服務(wù)器名; Database=數(shù)據(jù)庫名;Trusted_Connection=yes”
示例:
首先要在計(jì)算機(jī)管理à數(shù)據(jù)源à配置好相對(duì)應(yīng)的數(shù)據(jù)源(選擇數(shù)據(jù)庫類型,設(shè)置數(shù)據(jù)庫文件路徑與相對(duì)應(yīng)的數(shù)據(jù)庫名)
- Driver= Microsoft.Jet.OLEDB.4.0;
- Server=.\SQLEXPRESS;
- Database=DatabaseName;
- Trusted_Connection=yes
四、使用OracleConnection對(duì)象連接Oracle數(shù)據(jù)庫
- Data Source=Oracle8i;
- Integrated Security=yes
五、在ASP.NET項(xiàng)目中的web.config文件里配置數(shù)據(jù)庫連接并在程序代碼中獲取連接字符串
1.在<connectionStrings> 標(biāo)簽里添加連接
- <connectionStrings>
- <add name="ConnectionName" connectionString="Server=.\SQLEXPRESS;Database=DatabaseName;
- User ID=sa;Password=abc123"
- providerName="System.Data.SqlClient" />
- </connectionStrings>
或者
- <connectionStrings>
- <add name="ConnectionName"
- connectionString="Server=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\data.mdf;
- Integrated Security=true"
- providerName="System.Data.SqlClient" />
- </connectionStrings>
在程序代碼中獲取<connectionStrings> 標(biāo)簽里的連接字符串:
引用命名空間:
- Using System.Configuration ;
- string connStr = ConfigurationManager.ConnectionStrings["ConnectionName"].ToString();
2.在<appSettings>標(biāo)簽里添加連接
- <appSettings>
- <add key="ConnectionName"
- value="Server=.\SQLEXPRESS;Database=DatabaseName;User ID=sa;Password=abc123" />
- </appSettings>
或者
- <appSettings>
- <add key="ConnectionName"
- value="Server=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\data.mdf;Integrated Security=True" />
- </appSettings>
在程序代碼中獲取<appSettings> 標(biāo)簽里的連接字符串:
引用命名空間:
- Using System.Configuration ;
- string connStr = ConfigurationManager.AppSettings["ConnectionName"].ToString();
原文鏈接:http://edu.codepub.com/2011/0516/31624.php