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.

Konvensi sintaks transact-SQL

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