立即注冊(cè) 找回密碼

QQ登錄

只需一步,快速開(kāi)始

查看: 3343|回復(fù): 0
打印 上一主題 下一主題

Asp.net中Web.config連接字符串及配置數(shù)據(jù)庫(kù)sqlserver

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2016-10-17 12:58:06 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
道勤網(wǎng)-數(shù)據(jù)bmrsportswear.com

親注冊(cè)登錄道勤網(wǎng)-可以查看更多帖子內(nèi)容哦。ò蕡D片、文字詳情等)請(qǐng)您及時(shí)注冊(cè)登錄-bmrsportswear.com

您需要 登錄 才可以下載或查看,沒(méi)有賬號(hào)?立即注冊(cè)

x
近日正在看Asp.NET,看到Web.config有很不清楚之處,特意從網(wǎng)絡(luò)、MSDN搜集、歸納和整理,供大家分享。
在ASP.NET的web.config中,可以用兩種方式來(lái)寫連接字符串的配置。


<configuration>   <appSettings>      <add key="connstr1" value="Data Source=.;Initial Catalog=DBName;Integrated Security=true"/>      <add key="connstr2" value=".........">   </appSettings>   <connectionStrings>      <add name="connstr3" connectionString="........" />      <add name="connstr4" connectionString="......" providerName="System.Data.Sqlclient"   </connectionStrings></configuration>

如上代碼所示:兩種方式為appSettings和connectionStrings

appSettings:

         ①它是asp.net1.1的時(shí)候用的,在vs2003中用的

         ②里面存的相當(dāng)于鍵值對(duì)的形式,key和value。不僅僅可以存連接字符串,還可以存儲(chǔ)一些配置項(xiàng)。其中value中包括數(shù)據(jù)庫(kù)服務(wù)器地址、用戶名和密碼、數(shù)據(jù)庫(kù)名稱等信息。

         ③在appSettings中,不能使用ProviderName="System.Data......."(不過(guò)如果你要用也可以,只要寫在value里面就可以了,當(dāng)成值傳遞過(guò)去)

         ④在后臺(tái)取值方式用代碼:


     string conn=System.Configuration.ConfigurationManager.AppSettings["connstr";]

connectionStrings:

         ①它是asp.net2.0中新增的。

         ②里面存的也類似于鍵值對(duì)的形式,使用的是name和connectionString,一般就存連接字符串。

         ③在connectionStrings中可以,可以使用providerName.

         ④在后臺(tái)代碼,取值的方式:

     string conn=System.Configuration.ConfigurationManager.ConnectionStrings["connstr"].ConnectionString;其它說(shuō)明:        ①Initial Catalog=Database就是數(shù)據(jù)庫(kù)名稱,根據(jù)從網(wǎng)絡(luò)上搜集到的信息看,兩者好像可以完全通用,基本沒(méi)有區(qū)別。             Integrated Security集成安全選項(xiàng)設(shè)置,可識(shí)別的值為 true、false、yes、no以及與true等效的sspi。當(dāng)為 false 時(shí),將在連接中指定用戶ID和密碼。當(dāng)為true時(shí),將使用當(dāng)前的Windows 帳戶憑據(jù)進(jìn)行身份驗(yàn)證。其中SSPI為Security Supoort Provider Interface即安全支持提供者接口,Microsoft安全支持提供器接口(SSPI)是定義得較全面的公用API,用來(lái)獲得驗(yàn)證、信息完整性、信息隱私等集成安全服務(wù),以及用于所有分布式應(yīng)用程序協(xié)議的安全方面的服務(wù)。應(yīng)用程序協(xié)議設(shè)計(jì)者能夠利用該接口獲得不同的安全性服務(wù)而不必修改協(xié)議本身。SQL Server 數(shù)據(jù)庫(kù)連接字符串中,Integrated Security=SSPI 表示使用 Windows 身份驗(yàn)證,即使用運(yùn)行當(dāng)前應(yīng)用程序的用戶來(lái)連接 SQL Server,對(duì)網(wǎng)頁(yè)來(lái)說(shuō),一般是 IIS 中的匿名用戶。   
既然connectionStrings是2.0版本出來(lái)的,那它肯定比appsettings有好處了
網(wǎng)上如是說(shuō):
         ① 可將連接字符串加密,使用MS的一個(gè)加密工具即可。
         ② 可直接邦定的數(shù)據(jù)源控件,而不必寫代碼讀出來(lái)再賦值給控件。
         ③ 可方便的更換數(shù)據(jù)庫(kù)平臺(tái),如換為Oracle數(shù)據(jù)庫(kù),只需修改providerName
providerName它的作用是什么呢?
我們先看一下providerName的參數(shù)值。
①providerName="System.Data.SqlClient"  ----說(shuō)明使用的是MSSQLServer數(shù)據(jù)庫(kù)②providerName="System.Data.SqlLite"  ----說(shuō)明使用的是SQLLite數(shù)據(jù)庫(kù)③providerName="System.Data.OracleClient"  ----說(shuō)明使用的是Oracle數(shù)據(jù)庫(kù)或providerName="System.Data.Oracle.DataAccess.Client"  ----同上④providerName="System.Data.OleDb"   ----說(shuō)明使用的是Access數(shù)據(jù)庫(kù)
providerName可寫可不寫。
我們什么時(shí)候用providerName呢?
比如,我們現(xiàn)在要做一個(gè)項(xiàng)目,以后會(huì)賣個(gè)兩個(gè)企業(yè)使用:A和B。這就有不確定因素了,A使用Oracle,B使用SQLserver。
所以,
      ①數(shù)據(jù)庫(kù):我們需要建兩個(gè)庫(kù),一個(gè)用oracle,一個(gè)用Sqlserver。
      ②程序:我們一般不去寫兩個(gè)系統(tǒng)讓他們使用,我們肯定會(huì)去判斷,先判斷他們使用的是什么數(shù)據(jù)庫(kù),然后再在程序里執(zhí)行什么樣的數(shù)據(jù)庫(kù)腳本。
      ③web.config代碼:
<configuration>  <connectionStrings>    <add name="connStr" connectionString="Data Source=.;Initial Catalog=mydb;Integrated Security=true" providerName="System.Data.SqlClient"/>  </connectionStrings></configuration>      ④程序代碼:進(jìn)行判斷,如果providerName="System.Data.SqlClient"則執(zhí)行SQLServer的腳本,如果providerName="System.Data.OracleClient"則調(diào)用Oracle的數(shù)據(jù)庫(kù)腳本。
public static readonly string connStr = System.Configuration.ConfigurationManager.ConnectionStrings["connStr"].ProviderName;public static string databaseType = System.Configuration.ConfigurationManager.ConnectionStrings["connStr"].ProviderName;public static int ExecuteNonQuery(CommandType commandType, string commandText, params System.Data.OleDb.OleDbParameter[] parm){    int num = 0;    if (databaseType == "System.Data.SqlClient")    {        //此處執(zhí)行Microsoft SQLServer的數(shù)據(jù)庫(kù)腳本    }    else if (databaseType == "System.Data.OracleClient")    {        //此處執(zhí)行Oracle的數(shù)據(jù)庫(kù)腳本    }    return num;}常見(jiàn)的數(shù)據(jù)庫(kù)連接代碼(C#):SqlConnection conn = new SqlConnection( “Server=(local);Integrated Security=SSPI;database=Pubs“);SqlConnection conn = new SqlConnection(“server=(local)\NetSDK;database=pubs;Integrated Security=SSPI“);SqlConnection conn = new SqlConnection(“Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;“);SqlConnection conn = new SqlConnection(“ data source=(local);initial catalog=xr;integrated security=SSPI;persist security info=False;workstation id=XURUI;packet size=4096; “);SqlConnection myConn  = new System.Data.SqlClient.SqlConnection(“Persist Security Info=False;IntegratedSecurity=SSPI;database=northwind;server=mySQLServer“);SqlConnection conn = new SqlConnection( “ uid=sa;pwd=passwords;initial catalog=pubs;data source=127.0.0.1;Connect Timeout=900“);
相關(guān):web.config配置文件詳解
關(guān)于asp.net網(wǎng)站管理工具安全選項(xiàng)無(wú)法連接到Sql server數(shù)據(jù)庫(kù)




道勤主機(jī)提供365天*24小時(shí)全年全天無(wú)休、實(shí)時(shí)在線、零等待的售后技術(shù)支持。竭力為您免費(fèi)處理您在使用道勤主機(jī)過(guò)程中所遇到的一切問(wèn)題! 如果您是道勤主機(jī)用戶,那么您可以通過(guò)QQ【792472177】、售后QQ【59133755】、旺旺【詮釋意念】、微信:q792472177免費(fèi)電話、后臺(tái)提交工單這些方式聯(lián)系道勤主機(jī)客服! 如果您不是我們的客戶也沒(méi)問(wèn)題,點(diǎn)擊頁(yè)面最右邊的企業(yè)QQ在線咨詢圖標(biāo)聯(lián)系我們并購(gòu)買后,我們?yōu)槟赓M(fèi)進(jìn)行無(wú)縫搬家服務(wù),讓您享受網(wǎng)站零訪問(wèn)延遲的遷移到道勤主機(jī)的服務(wù)!
本內(nèi)容系 道勤團(tuán)隊(duì) bmrsportswear.com 客服與技術(shù)人員研究整理的智慧結(jié)晶,轉(zhuǎn)載勿用于商業(yè)用途,并保留本文鏈接,侵權(quán)必究!
dsu_marcocopyright:copy_link 

【道勤網(wǎng)】- bmrsportswear.com 軟件視頻自學(xué)教程|免費(fèi)教程|自學(xué)電腦|3D教程|平面教程|影視動(dòng)畫教程|辦公教程|機(jī)械設(shè)計(jì)教程|網(wǎng)站設(shè)計(jì)教程!【道勤網(wǎng)】 - 論壇版權(quán)1、本主題所有言論和圖片純屬會(huì)員個(gè)人意見(jiàn),與本論壇立場(chǎng)無(wú)關(guān)
2、本站所有主題由該帖子作者發(fā)表,該帖子作者與【道勤網(wǎng)】- bmrsportswear.com 軟件視頻自學(xué)教程|免費(fèi)教程|自學(xué)電腦|3D教程|平面教程|影視動(dòng)畫教程|辦公教程|機(jī)械設(shè)計(jì)教程|網(wǎng)站設(shè)計(jì)教程!【道勤網(wǎng)】享有帖子相關(guān)版權(quán)
3、其他單位或個(gè)人使用、轉(zhuǎn)載或引用本文時(shí)必須同時(shí)征得該帖子作者和【道勤網(wǎng)】- bmrsportswear.com 軟件視頻自學(xué)教程|免費(fèi)教程|自學(xué)電腦|3D教程|平面教程|影視動(dòng)畫教程|辦公教程|機(jī)械設(shè)計(jì)教程|網(wǎng)站設(shè)計(jì)教程!【道勤網(wǎng)】的同意
4、帖子作者須承擔(dān)一切因本文發(fā)表而直接或間接導(dǎo)致的民事或刑事法律責(zé)任
5、本帖部分內(nèi)容轉(zhuǎn)載自其它媒體,但并不代表本站贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé)
6、如本帖侵犯到任何版權(quán)問(wèn)題,請(qǐng)立即告知本站,本站將及時(shí)予與刪除并致以最深的歉意
7、【道勤網(wǎng)】- bmrsportswear.com 軟件視頻自學(xué)教程|免費(fèi)教程|自學(xué)電腦|3D教程|平面教程|影視動(dòng)畫教程|辦公教程|機(jī)械設(shè)計(jì)教程|網(wǎng)站設(shè)計(jì)教程!【道勤網(wǎng)】管理員和版主有權(quán)不事先通知發(fā)貼者而刪除本文

本版積分規(guī)則

關(guān)閉

道勤網(wǎng)- 推薦內(nèi)容!上一條 /2 下一條

!jz_fbzt! !jz_sgzt! !jz_xgzt! 快速回復(fù) !jz_fhlb! !jz_lxwm! !jz_gfqqq!

關(guān)于我們|手機(jī)版|小黑屋|地圖|【道勤網(wǎng)】-bmrsportswear.com 軟件視頻自學(xué)教程|免費(fèi)教程|自學(xué)電腦|3D教程|平面教程|影視動(dòng)畫教程|辦公教程|機(jī)械設(shè)計(jì)教程|網(wǎng)站設(shè)計(jì)教程【道勤網(wǎng)】 ( 皖I(lǐng)CP備15000319號(hào)-1 )

GMT+8, 2024-10-23 09:35

Powered by DaoQin! X3.4 © 2016-2063 Dao Qin & 道勤科技

快速回復(fù) 返回頂部 返回列表