基于 VS2005 + SQL Server 2005
裝好vs2005,如果選擇安裝SqlExpress,一切都是默認(rèn)配置好的,"login控件"拖上就能用.但是這個(gè)似乎不太夠用,ok,安裝 SqlServer.首先在安裝上就花費(fèi)了一番功夫,這里就不羅嗦了.那么該怎樣配置一下呢?
在msdn上也找到了,見(jiàn)下面的代碼.在web.config中添加一段,就能連上數(shù)據(jù)庫(kù)了.
2 <connectionStrings>
3 <remove name="LocalSqlServer"/>
4 <add name="LocalSqlServer"
5 connectionString="Data Source=localhost;
6 Initial Catalog=appservicesdb;
7 Integrated Security=True"
8 providerName="System.Data.SqlClient"/>
9 </connectionStrings>
10 </configuration>
這里在羅嗦幾句,第七行,如果是基于window驗(yàn)證的就按此書寫,但是(Windows 2003)的用戶需要設(shè)置一下用戶的,否則不能通過(guò)的.這段代碼是我是用得user=***,pwd=***,因?yàn)楹笃谖倚枰浦?web和sql服務(wù)器分開(kāi)的,而且我比較喜歡后者.
我非常納悶的是第三句,不知道為什么要用remove,msdn上這么解釋 :
2 <add />向連接字符串集合添加名稱/值對(duì)形式的連接字符串。
3 <clear />移除所有對(duì)繼承的連接字符串的引用,僅允許那些由當(dāng)前的 add 元素添加的連接字符串。
4 <remove />從連接字符串集合中移除對(duì)繼承的連接字符串的引用。
5 </connectionStrings>
6
7
不知大家是否在意過(guò),而且我去掉remove這句話,會(huì)報(bào)錯(cuò)。經(jīng)過(guò)一番折騰,其實(shí),<connectionStrings />這段話就相當(dāng)于重載,想想看,為什么在SqlExpress時(shí)能夠默認(rèn)連接,應(yīng)該是在什么地方配置好了。以前接觸過(guò)unix和linux,感受最大是他們的配置文件,所有的東西都需要你去配置,而且一但你配置好之后條理會(huì)非常清楚,全都是用文本配置的。用Microsoft的東西總是有點(diǎn)迷糊,不知道彼此之間的銜接,現(xiàn)在Microsoft感覺(jué)配置文件方面倒是好多了,有點(diǎn)跑題了,趕快回來(lái)。所以總有找配置文件的感覺(jué),還別說(shuō),真是給找著了,在machine.config中有一段代碼如下:
2 <add
3 name="LocalSqlServer"
4 connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
5 providerName="System.Data.SqlClient"
6 />
7 </connectionStrings>
8
找到源頭了,就是這句話在起作用。當(dāng)你啟動(dòng)你編輯的頁(yè)面時(shí),首先會(huì)調(diào)用你的web.config文件,當(dāng)發(fā)現(xiàn)你的web.config中沒(méi)有進(jìn)行任何配置時(shí),就去machine.config中查找。所以說(shuō)就有上面的remove語(yǔ)句。其實(shí)不僅這樣,而且LocalSqlServer也不能改,因?yàn)?/SPAN>machine.config中的后面的provider還調(diào)用了LocalSqlServer,感興趣的可以看看,這里就不羅嗦了。
最后還需要提醒大家的是,machine.config中最好不要改,很可能改了某項(xiàng),你的機(jī)器就出大問(wèn)題了哦。
原文地址:http://www.cnblogs.com/wendy980622/archive/2006/03/09/346198.html