none
登錄觸發器問題 RRS feed

  • 問題

  •  

    我建立了一個登錄觸發器。此觸發器將登錄用戶的信息INSERT到master資料庫的一個新建的Table中,但是在建立觸發器之前忘記先建立Table。這樣就出現了錯誤無法登錄到Sql Server,提示信息爲:

    由於執行觸發器,登錄名'AAA' 的登錄失敗。
    已將資料庫的上下文切換爲 'master'。
     (Microsoft SQL Server,错误: 17892)

    在單用戶模式下登錄時提示的錯誤信息爲:

    2008-01-23 15:30:17.29 spid51      錯誤: 208,嚴重性: 16,狀態: 1。
    2008-01-23 15:30:17.29 spid51      對象名 ‘LoginAud’無效。
    2008-01-23 15:30:17.29 登錄          錯誤: 17892,嚴重性: 20,狀態: 1。

    這時我無論使用哪個帳號(包括SA帳號)都無法登入Sql Server,我該怎麽辦呢?

    我建的觸發器腳本爲(腳本中用到的TABLE LoginAud尚未建立):

    CREATE TRIGGER Server_TRG_Login
    ON ALL SERVER
    AFTER LOGON
    AS
    INSERT INTO LoginAud(UserName,LoginTime)
    SELECT SUSER_SNAME(),GETDATE()

    2008年1月24日 上午 12:21

解答

  • Dear Sir,

     

    若是您有備份master, 請還原master, 若沒有備份的話, 請您執行rebuild master的動作.

     

    Best regards,

    微軟技術支援中心-Colin

     

    2008年1月24日 上午 08:53