View a markdown version of this page

為 Amazon RDS for SQL Server 建立自訂錯誤訊息 - Amazon Relational Database Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

為 Amazon RDS for SQL Server 建立自訂錯誤訊息

應用程式通常會在 中定義自己的錯誤訊息,sys.messages以便使用 引發錯誤訊息RAISERROR。在 Amazon RDS 資料庫執行個體上,若要將自訂訊息新增至 sys.messages,請使用 rds_create_custom_message預存程序。程序會將其參數傳遞給 sp_addmessage。

rds_create_custom_message 程序具有下列參數。

參數名稱 資料類型 預設 必要 說明

@msgnum

int

NULL

必要

訊息的 ID。值必須介於 50001 和 2147483647 之間。

@severity

smallint

NULL

必要

訊息的嚴重性等級。值必須介於 1 到 25 之間。

@msgtext

nvarchar(255)

NULL

必要

訊息的文字。值不可為空白。

@lang

SYSNAME

NULL

選擇性

訊息的語言。預設是工作階段的預設語言。

@with_log

varchar(5)

NULL

選擇性

指定是否在發出訊息時將訊息寫入 Windows 應用程式日誌。

@replace

varchar(7)

NULL

選擇性

指定 REPLACE 以覆寫具有相同 ID 和語言的現有訊息。

這些參數的意義與 的參數相同sp_addmessage。如需詳細資訊,請參閱 Microsoft Learn 網站上的 sp_addmessage。

下列範例會將訊息新增至 sys.messages,並在提出訊息時將其記錄到 Windows 應用程式日誌。在此範例中,將@msgnum值 50002、@severity值 16 和@msgtext值取代為您自己的訊息 ID、嚴重性和文字。

EXEC msdb.dbo.rds_create_custom_message @msgnum = 50002, @severity = 16, @msgtext = N'The order could not be processed.', @lang = 'us_english', @with_log = 'TRUE';

下列範例會取代現有訊息的文字。在此範例中,將@msgnum值 50002、@severity值 16 和@msgtext值取代為您自己的訊息 ID、嚴重性和文字。

EXEC msdb.dbo.rds_create_custom_message @msgnum = 50002, @severity = 16, @msgtext = N'The order could not be processed. Contact support.', @lang = 'us_english', @with_log = 'TRUE', @replace = 'REPLACE';

若要確認訊息已新增,請查詢 sys.messages。在此範例中,將message_id值 50002 取代為您的訊息 ID。

SELECT * FROM sys.messages WHERE message_id = 50002;