sp_altermessage (T-SQL)
Berlaku untuk: SQL Server
Mengubah status pesan yang ditentukan pengguna atau sistem dalam instans Mesin Database SQL Server. Pesan yang ditentukan pengguna dapat dilihat menggunakan sys.messages
tampilan katalog.
Sintaks
sp_altermessage
[ @message_id = ] message_id
, [ @parameter = ] N'parameter'
, [ @parameter_value = ] 'parameter_value'
[ ; ]
Argumen
[ @message_id = ] message_id
Nomor kesalahan pesan yang akan diubah dari sys.messages
. @message_id int, tanpa default.
[ @parameter = ] N'parameter'
Digunakan dengan @parameter_value untuk menunjukkan bahwa pesan akan ditulis ke log aplikasi Microsoft Windows. @parameter adalah sysname, tanpa default.
@parameter harus diatur ke WITH_LOG
atau NULL
. Jika @parameter diatur ke WITH_LOG
atau NULL
, dan nilai untuk @parameter_value adalah true
, pesan ditulis ke log aplikasi Windows. Jika @parameter diatur ke WITH_LOG
atau NULL
dan nilai untuk @parameter_value adalah false
, pesan tidak selalu ditulis ke log aplikasi Windows, tetapi mungkin ditulis tergantung pada bagaimana kesalahan dimunculkan.
Jika pesan ditulis ke log aplikasi Windows, pesan juga ditulis ke file log kesalahan Mesin Database.
Jika @parameter ditentukan, @parameter_value juga harus ditentukan.
[ @parameter_value = ] 'parameter_value'
Digunakan dengan @parameter untuk menunjukkan bahwa kesalahan akan ditulis ke log aplikasi Microsoft Windows. @parameter_value adalah varchar(5), tanpa default.
- Jika
true
, kesalahan selalu ditulis ke log aplikasi Windows. - Jika
false
, kesalahan tidak selalu ditulis ke log aplikasi Windows, tetapi mungkin ditulis tergantung pada bagaimana kesalahan dimunculkan.
Jika @parameter_value ditentukan, @parameter juga harus ditentukan.
Mengembalikan nilai kode
0
(berhasil) atau 1
(kegagalan).
Tataan hasil
Tidak ada.
Keterangan
Efek dengan sp_altermessage
opsi mirip RAISERROR WITH LOG
dengan WITH_LOG
parameter, kecuali yang sp_altermessage
mengubah perilaku pengelogan pesan yang ada. Jika pesan diubah menjadi WITH_LOG
, pesan selalu ditulis ke log aplikasi Windows, terlepas dari bagaimana pengguna memanggil kesalahan. Bahkan jika RAISERROR
dijalankan tanpa WITH_LOG
opsi , kesalahan ditulis ke log aplikasi Windows.
Pesan sistem dapat dimodifikasi dengan menggunakan sp_altermessage
.
Izin
Memerlukan keanggotaan dalam peran server tetap serveradmin .
Contoh
Contoh berikut menulis pesan 55001
yang ada ke log aplikasi Windows.
EXEC sp_altermessage 55001, 'WITH_LOG', 'true';
GO