Compartir a través de


Uso de mensajes

En SMO, los mensajes del sistema se representan mediante el SystemMessageCollection objeto que pertenece al Server objeto . Dado que los mensajes del sistema no se pueden modificar, SystemMessage las propiedades del objeto son de solo lectura.

Los mensajes definidos por el usuario se representan mediante programación en SMO por el UserDefinedMessageCollection objeto . Los mensajes definidos por el usuario existentes se pueden detectar iterando a través de la colección. Se pueden crear nuevos mensajes definidos por el usuario creando instancias de un nuevo UserDefinedMessage objeto y estableciendo las propiedades adecuadas.

Ejemplos

Para los ejemplos de código siguientes, tendrá que seleccionar el entorno de programación, la plantilla de programación y el lenguaje de programación para crear la aplicación. Para obtener más información, vea Crear un proyecto SMO de Visual Basic en Visual Studio .NET y Crear un proyecto SMO de Visual C# en Visual Studio .NET.

Búsqueda de un mensaje de sistema determinado en Visual Basic

En el ejemplo de código se muestra cómo identificar un mensaje del sistema por número de identificador y mostrar el mensaje.

Búsqueda de un mensaje de sistema determinado en Visual C#

En el ejemplo de código se muestra cómo identificar un mensaje del sistema por número de identificador y mostrar el mensaje.

{  
            //Connect to the local, default instance of SQL Server.   
            Server srv = new Server();  
            //Reference an existing system message using the   
            //ItemByIdAndLanguage method.   
            SystemMessage msg = default(SystemMessage);  
            msg = srv.SystemMessages.ItemByIdAndLanguage(14126, "us_english");  
            //Display the message ID and text.   
            Console.WriteLine(msg.ID.ToString() + " " + msg.Text);  
        }  

Búsqueda de un mensaje de sistema determinado en PowerShell

En el ejemplo de código se muestra cómo identificar un mensaje del sistema por número de identificador y mostrar el mensaje.

# Set the path context to the local, default instance of SQL Server.  
CD \sql\localhost\  
$srv = Get-Item default  
  
#Get the message 14126 in US English and display it  
$msg = $srv.SystemMessages.ItemByIdAndLanguage(14126, "us_english")  
$msg.ID.ToString() + " "+ $msg.Text  

Agregar un nuevo mensaje de User-Defined en Visual Basic

En el ejemplo de código se muestra cómo crear un mensaje definido por el usuario con un identificador mayor que 50000.

Dim mysrv As Server  
mysrv = New Server  
Dim udm As UserDefinedMessage  
udm = New UserDefinedMessage(mysrv, 50003, "us_english", 16, "Test message")  
udm.Create()  

Agregar un nuevo mensaje de User-Defined en Visual C#

En el ejemplo de código se muestra cómo crear un mensaje definido por el usuario con un identificador mayor que 50000.

{
            Server mysrv = new Server();  
  
            UserDefinedMessage udm = new UserDefinedMessage(mysrv, 50030, "us_english",16, "Test message");  
            udm.Create();  
             UserDefinedMessage  msg = mysrv.UserDefinedMessages.ItemByIdAndLanguage(50030, "us_english");  
            //Display the message ID and text.   
            Console.WriteLine(msg.ID.ToString() + " " + msg.Text);  
  
        }  

Agregar un nuevo mensaje de User-Defined en PowerShell

En el ejemplo de código se muestra cómo crear un mensaje definido por el usuario con un identificador mayor que 50000.

#Get a server object which corresponds to the default instance  
$srv = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Server  
  
#Create a new message
$udm = New-Object -TypeName Microsoft.SqlServer.Management.SMO.UserDefinedMessage -ArgumentList `  
$srv, 50030, "us_english", 16, "Test message"  
$udm.Create()  
$msg = $srv.UserDefinedMessages.ItemByIdAndLanguage(50030, "us_english");  
$msg