日本三级片在线观看视频_西西大胆午夜人体视频无码_少妇无码一区二区_亚洲天堂超碰_极品少妇被猛的白浆直流_91精品云霸高清中文字幕_草草五月天伊人_久久少妇无码专区_欧美激欧美啪啪5老太_日韩在线在线成人

幫助中心 >  技術知識庫 >  數(shù)據(jù)庫 >  相關技術支持 >  sqlserver搭建網(wǎng)站遇到問題“對象名無效”

sqlserver搭建網(wǎng)站遇到問題“對象名無效”

2023-03-24 17:20:17 15484

在進行站點搬遷時,我們通常會把sql server數(shù)據(jù)庫備份成.bak文件,再到新的sql server環(huán)境下還原。在網(wǎng)站搭建完成后訪問時可能會出現(xiàn)“對象名無效”的錯誤,如下圖:

image.png 

以下是sql server出現(xiàn)報錯的原因以及解決方法:

這其實是sql server孤立用戶的問題。

image.png 

如上圖所示,a0805120154為恢復完的數(shù)據(jù)庫。該數(shù)據(jù)庫的很多表是用戶a0805120154建立的,但是當我們恢復sql server數(shù)據(jù)庫后,a0805120154用戶此時就成了孤立用戶。沒有與之對應的sql server用戶名,哪怕你建立了一個a0805120154登錄用戶名,而且是以前的用戶密碼,用該用戶登錄后同樣沒辦法操作以前屬于a0805120154的用戶表。

比如在sql server查詢語句中訪問上圖中的三個視圖時,就會提示“對象名無效”

這個問題有兩種辦法解決。

先說解決的前提條件。 首先,如上還原sql server數(shù)據(jù)庫a0805120154。

數(shù)據(jù)庫恢復后,就產(chǎn)生了孤立用戶a0805120154。 然后,用sa用戶或者具有DBA權限的sql server用戶登錄,創(chuàng)建一個a0805120154數(shù)據(jù)庫登錄用戶,密碼隨便設置,也可以和以前的保持一致。

image.png

我們用它來對應孤立的a0805120154用戶,使登錄用戶和sql server數(shù)據(jù)庫的孤立用戶對應起來,其實我們建立了同樣名稱的數(shù)據(jù)庫登錄用戶后,數(shù)據(jù)庫中的表我們照樣不能使用,因為sid的不同,就是系統(tǒng)登錄表和數(shù)據(jù)庫用戶表中的用戶名相同, 單是sid字段數(shù)據(jù)庫中的還是以前舊系統(tǒng)的sid值,所以我們就要把它對應成我們新建的。sql server數(shù)據(jù)庫就是靠sid來識別用戶的。

這里可以使用sql server存儲過程sp_change_users_login。它有三種動作,分別是report,update_one和auto_fix。

運行sp_change_users_login 'report',系統(tǒng)會列出當前數(shù)據(jù)庫的孤立用戶數(shù)。

image.png 

我們只需要選擇當前數(shù)據(jù)庫為a0805120154,然后運行 sp_change_users_login 'update_one','a0805120154','a0805120154' --系統(tǒng)就會提示修復了一個孤立用戶。

image.png 

重新打開網(wǎng)站,問題就解決了。

 


提交成功!非常感謝您的反饋,我們會繼續(xù)努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務,我們很需要您進一步的反饋信息:

在文檔使用中是否遇到以下問題: