今天也自己試試用這個(gè)工具來配置一下。首先在數(shù)據(jù)庫中建立了一個(gè)數(shù)據(jù)庫,名稱為TESTDB,然后新建了一個(gè)sqlserver的登錄名(testdb),指定了testdb為TESTDB的默認(rèn)數(shù)據(jù)庫。然后就開始配置了。
配置過程是參考《aspnet_regsql.exe 工具注冊(cè)數(shù)據(jù)庫》的,但是到了選擇服務(wù)器和數(shù)據(jù)庫時(shí)候,填寫了正確的服務(wù)器名,選擇sql server身份驗(yàn)證,填寫了新建的testdb用戶名和密碼,然后點(diǎn)選下拉框來選擇目標(biāo)數(shù)據(jù)庫,此時(shí)出現(xiàn)了錯(cuò)誤提示:(未能查詢SQL Server中的數(shù)據(jù)庫名稱列表。無法打開用戶默認(rèn)數(shù)據(jù)庫,登錄失敗,用戶‘testdb'登錄失敗)
哦哦,對(duì)了,忘了授權(quán)了,這個(gè)用戶沒有登錄權(quán)限呢,為了保證不會(huì)因?yàn)槭菣?quán)限問題而導(dǎo)致配置失敗,我給予此用戶sysadmin的最高權(quán)限。然后重新運(yùn)行于此,但是依然報(bào)如下錯(cuò)誤:(未能查詢SQL Server中的數(shù)據(jù)庫名稱列表。對(duì)象名‘sysdatabases'無效)
這就奇怪了,我試了試用sa,就沒問題,可以顯示數(shù)據(jù)庫中的所有數(shù)據(jù)庫的名稱,莫非還是權(quán)限不夠??我知道sysdatabases是系統(tǒng)表中的一個(gè)視圖,用于讀取所有的數(shù)據(jù)庫名,于是用testdb登錄數(shù)據(jù)庫,試著執(zhí)行此命令:
select * from sys.sysdatabases
沒問題,可以顯示出各個(gè)表名啊,應(yīng)該不是這個(gè)訪問權(quán)限問題。那怎么辦?
解決辦法:
抱著試試的態(tài)度,我在上面圖中的數(shù)據(jù)庫那個(gè)下拉框中,直接填寫了我的數(shù)據(jù)庫名:TESTDB,點(diǎn)擊下一步,竟然通過了~~~,配置成功后,去數(shù)據(jù)庫中查看,果然有自動(dòng)生成的那11個(gè)以asp_開頭的表和那些試圖和存儲(chǔ)過程等。
結(jié)論:不知道問題出在哪里,雖然沒有解決這個(gè)“問題”,但是繞過去了,所以,應(yīng)該是配置工具的問題。