ASP.NET配置中的“安全”選項卡提示“無法串連到SQL Server資料庫”[內容提要]這通常是因為我們自己安裝了新的資料庫,並卸載了VS 2005預設安裝的SQLExpress,由於系統會找SQLExpress,找不到當然就會有問題。
這通常是因為我們自己安裝了新的資料庫,並卸載了VS 2005預設安裝的SQLExpress,由於系統會找SQLExpress,找不到當然就會有問題。解決辦法:
我自己安裝的時候使用的執行個體名是:SQLServer2,機器名是:A4D5DF939A4F4C2
1. 找到C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727目錄下的aspnet_regsql.exe,重建aspnetdb資料庫。
2. 在VS 2005的“工具”--“選項”--“資料庫工具”--“資料連線”中修改執行個體名為我們的執行個體名
3. 在VS 2005的“工具”--“串連到資料庫”,填寫伺服器名,資料庫選擇aspnetdb
4. 點擊“進階...”按鈕,並拷貝其中的DataSource的內容
5. 開啟IIS,點擊相應網站的屬性,點ASP.NET選項卡,修改其中的LocalSqlServer的值為我們剛才複製的字串
6. 在“身分識別驗證”選項卡中勾選“啟用角色管理”
7. 大功告成
遇到“找不到預存程序 'dbo.aspnet_CheckSchemaVersion'”錯誤時,應注意以下幾點:
- 是否已經對網站的資料庫運行了aspnet_regsql,這是常見的問題。網上很多文章說啟動了嚮導就一路下一步到底就行了,這是不全面的。要根據網站實際使用的資料庫選擇目標及身分識別驗證方式。
- 連接字串問題,檢查網站的web config,如果沒有connectionStrings節的話就檢查原生machine.config(若是64位系統則有兩個),看其連接字串的目標SQL Server與實際資料庫是否相符。預設的連接字串是EXPRESS的,如果使用的是開發版或企業版則尤其要注意。