1. <button id="b1csx"></button>

      1. <li id="b1csx"></li>

        <em id="b1csx"><strike id="b1csx"><kbd id="b1csx"></kbd></strike></em><th id="b1csx"><big id="b1csx"></big></th>
        <rp id="b1csx"></rp>
        <progress id="b1csx"><track id="b1csx"></track></progress>
        <dd id="b1csx"></dd>
        1. 用戶、組或角色 在當前數據庫中已存在發布時間:2015/11/10 12:59:00 閱讀次數:

            

          SQL Server把一臺服務器上的數據庫轉移到另外一臺服務器上。而轉移完成后,需要給一個"登錄"關聯一個"用戶"時,發生錯誤:“錯誤15023:當前數據庫中已存在用戶或角色”或“用戶、組或角色在當前數據庫中已存在”

          原因及解決辦法:

          sql server中登錄用戶名與數據庫用戶用戶名的區別。登錄用戶名用于用戶身份驗證,而數據庫用戶用戶名用于數據庫訪問和權限驗證。
          登錄通過安全識別符 (SID) 與用戶關聯。將數據庫恢復到其他服務器時,數據庫中包含一組用戶和權限,但可能沒有相應的登錄或者登錄所關聯的用戶可能不是相同的用戶。這種情況被稱為存在“孤立用戶”。
          此時是不能通過新建登錄或者是對同名登錄授予對應數據庫的“用戶”權限來解決登錄問題,因為SQL Server會報出“錯誤15023:當前數據庫中已存在用戶或角色”,為了解決這個問題,需要調用系統存儲過程sp_change_users_login,具體用法如下:
          Use 數據庫名
          go
          sp_change_users_login 'update_one', '用戶名', '用戶名'
          其中數據庫名為存在孤立用戶的數據庫,update_one是存儲過程的參數,表示只處理一個用戶,前一個用戶名是數據庫用戶,后一個用戶名是用來數據庫登錄,以上這個SQL命令表示將數據庫用戶用戶名與服務器登錄用戶名重新連接起來。這樣就可以正常使用數據庫了。

          亚洲人aa在线观看,第一樱花亚洲AV专区,亚洲视频免费在线,小说区图片区亚洲中文字幕