Aracılığıyla paylaş


sp_altermessage (Transact-SQL)

Şunlar için geçerlidir: SQL Server

SQL Server Veritabanı Altyapısı örneğinde kullanıcı tanımlı veya sistem iletilerinin durumunu değiştirir. Kullanıcı tanımlı iletiler katalog görünümü kullanılarak sys.messages görüntülenebilir.

Transact-SQL söz dizimi kuralları

Sözdizimi

sp_altermessage
    [ @message_id = ] message_id
    , [ @parameter = ] N'parameter'
    , [ @parameter_value = ] 'parameter_value'
[ ; ]

Tartışmalar

[ @message_id = ] message_id

'den sys.messagesdeğiştirecek iletinin hata numarası. @message_id , varsayılan değer olmadan int'tir.

[ @parameter = ] N'parameter'

İletinin Windows uygulama günlüğüne yazıldığını belirtmek için @parameter_value ile birlikte kullanılır. @parametersysname'dir ve varsayılan değer yoktur.

@parameter veya NULLolarak ayarlanmalıdırWITH_LOG. @parameter veya NULLolarak ayarlanırsa WITH_LOG ve @parameter_value değeri isetrue, ileti Windows uygulama günlüğüne yazılır. @parameter veya NULL olarak ayarlanırsa WITH_LOG ve @parameter_value değeri isefalse, ileti her zaman Windows uygulama günlüğüne yazılamaz, ancak hatanın nasıl oluşturulduğuna bağlı olarak yazılabilir.

Bir ileti Windows uygulama günlüğüne yazılırsa, veritabanı altyapısı hata günlüğü dosyasına da yazılır.

@parameter belirtilirse, @parameter_value de belirtilmelidir.

[ @parameter_value = ] 'parameter_value'

Hatanın Windows uygulama günlüğüne yazıldığını belirtmek için @parameter ile birlikte kullanılır. @parameter_valuevarchar(5) şeklindedir ve varsayılan değer yoktur.

  • ise true, hata her zaman Windows uygulama günlüğüne yazılır.
  • ise false, hata her zaman Windows uygulama günlüğüne yazılamaz, ancak hatanın nasıl oluşturulduğuna bağlı olarak yazılabilir.

@parameter_value belirtilirse, @parameter de belirtilmelidir.

Dönüş kodu değerleri

0 (başarı) veya 1 (başarısızlık).

Sonuç kümesi

Yok.

Açıklamalar

seçeneğinin sp_altermessageWITH_LOG etkisi parametresininkine RAISERROR WITH LOG benzer, ancak sp_altermessage mevcut iletinin günlüğe kaydetme davranışını değiştirir. bir ileti olarak WITH_LOGdeğiştirilirse, bir kullanıcının hatayı nasıl çağıracağı fark etmeksizin her zaman Windows uygulama günlüğüne yazılır. Seçenek olmadan WITH_LOG yürütülse RAISERROR bile, hata Windows uygulama günlüğüne yazılır.

Sistem iletileri kullanılarak sp_altermessagedeğiştirilebilir.

İzinler

serveradmin sabit sunucu rolünde üyelik gerektirir.

Örnekler

Aşağıdaki örnek, var olan iletiyi 55001 Windows uygulama günlüğüne yazar.

EXECUTE sp_altermessage 55001, 'WITH_LOG', 'true';
GO