本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
為 Amazon RDS for SQL Server 建立自訂錯誤訊息
應用程式通常會在 中定義自己的錯誤訊息,sys.messages以便使用 引發錯誤訊息RAISERROR。在 Amazon RDS 資料庫執行個體上,若要將自訂訊息新增至 sys.messages,請使用 rds_create_custom_message預存程序。程序會將其參數傳遞給 sp_addmessage。
rds_create_custom_message 程序具有下列參數。
| 參數名稱 | 資料類型 | 預設 | 必要 | 說明 |
|---|---|---|---|---|
|
int |
NULL |
必要 |
訊息的 ID。值必須介於 50001 和 2147483647 之間。 |
|
smallint |
NULL |
必要 |
訊息的嚴重性等級。值必須介於 1 到 25 之間。 |
|
nvarchar(255) |
NULL |
必要 |
訊息的文字。值不可為空白。 |
|
SYSNAME |
NULL |
選擇性 |
訊息的語言。預設是工作階段的預設語言。 |
|
varchar(5) |
NULL |
選擇性 |
指定是否在發出訊息時將訊息寫入 Windows 應用程式日誌。 |
|
varchar(7) |
NULL |
選擇性 |
指定 |
這些參數的意義與 的參數相同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;