Share via


sp_password (Transact-SQL)

加入或變更 Microsoft SQL Server 登入的密碼。

ms174428.note(zh-tw,SQL.90).gif重要事項:
未來的 Microsoft SQL Server 發行版本將不再提供此功能。請避免在新的開發工作中使用此功能,並計劃修改目前使用此功能的應用程式。 請改用 ALTER LOGIN

主題連結圖示Transact-SQL 語法慣例

語法

sp_password [ [ @old = ] 'old_password' , ]
     { [ @new =] 'new_password' }
     [ , [ @loginame = ] 'login' ]

引數

  • [ @old= ] 'old_password'
    這是舊密碼。old_passwordsysname,預設值是 NULL。
  • [ @new= ] 'new_password'
    這是新密碼。new_passwordsysname,沒有預設值。如果沒有使用具名參數,就必須指定 old_password

    ms174428.security(zh-tw,SQL.90).gif安全性注意事項:
    請勿使用 NULL 密碼。請使用增強式密碼。如需詳細資訊,請參閱<增強式密碼>。
  • [ @loginame= ] 'login'
    這是受密碼變更所影響的登入名稱。loginsysname,預設值是 NULL。login 必須已經存在,而且只能由系統管理員 (sysadmin)安全性管理員 (securityadmin) 固定伺服器角色的成員指定。

傳回碼值

0 (成功) 或 1 (失敗)

備註

sp_password 會呼叫 ALTER LOGIN。這個陳述式支援其他選項。如需有關變更密碼的資訊,請參閱<ALTER LOGIN (Transact-SQL)>。

sp_password 無法在使用者自訂交易內執行。

權限

需要 ALTER ANY LOGIN 權限。若要在不提供舊密碼的情況下重設密碼,或是被變更的登入具有 CONTROL SERVER 權限,則也需要 CONTROL SERVER 權限。

主體可以變更本身的密碼。

範例

A. 在不知道舊密碼的情況下變更登入密碼

下列範例會顯示如何使用 ALTER LOGIN 將登入 Victoria 的密碼變更為 B3r1000d#2-36。這是慣用的方法。執行這個命令的使用者必須具有 CONTROL SERVER 權限。

ALTER LOGIN Victoria WITH PASSWORD = 'B3r1000d#2-36';
GO

B. 變更密碼

下列範例會顯示如何使用 ALTER LOGIN 將登入 Victoria 的密碼從 B3r1000d#2-36 變更為 V1cteAmanti55imE。這是慣用的方法。使用者 Victoria 不需要其他權限就可以執行這個命令。其他使用者需要 ALTER ANY LOGIN 權限。

ALTER LOGIN Victoria WITH 
     PASSWORD = 'V1cteAmanti55imE' 
     OLD_PASSWORD = 'B3r1000d#2-36';
GO

請參閱

參考

安全性預存程序 (Transact-SQL)
ALTER LOGIN (Transact-SQL)
CREATE LOGIN (Transact-SQL)
sp_addlogin (Transact-SQL)
sp_adduser (Transact-SQL)
sp_grantlogin (Transact-SQL)
sp_revokelogin (Transact-SQL)
系統預存程序 (Transact-SQL)

說明及資訊

取得 SQL Server 2005 協助