Condividi tramite


Uso dei messaggi

In SMO i messaggi di sistema sono rappresentati dall'oggetto SystemMessageCollection che appartiene all'oggetto Server . Poiché i messaggi di sistema non possono essere modificati, SystemMessage le proprietà dell'oggetto sono di sola lettura.

I messaggi definiti dall'utente vengono rappresentati a livello di codice in SMO dall'oggetto UserDefinedMessageCollection . I messaggi definiti dall'utente esistenti possono essere individuati eseguendo l'iterazione della raccolta. È possibile creare nuovi messaggi definiti dall'utente creando un'istanza di un nuovo UserDefinedMessage oggetto e impostando le proprietà appropriate.

Esempi

Per gli esempi di codice seguenti, è necessario selezionare l'ambiente di programmazione, il modello di programmazione e il linguaggio di programmazione per creare l'applicazione. Per altre informazioni, vedere Creare un progetto SMO di Visual Basic in Visual Studio .NET e Creare un progetto SMO visual C# in Visual Studio .NET.

Ricerca di un messaggio di sistema specifico in Visual Basic

Nell'esempio di codice viene illustrato come identificare un messaggio di sistema in base al numero ID e visualizzare il messaggio.

Ricerca di un messaggio di sistema specifico in Visual C#

Nell'esempio di codice viene illustrato come identificare un messaggio di sistema in base al numero ID e visualizzare il messaggio.

{  
            //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);  
        }  

Ricerca di un messaggio di sistema specifico in PowerShell

Nell'esempio di codice viene illustrato come identificare un messaggio di sistema in base al numero ID e visualizzare il messaggio.

# 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  

Aggiunta di un nuovo messaggio di User-Defined in Visual Basic

Nell'esempio di codice viene illustrato come creare un messaggio definito dall'utente con un ID maggiore di 50000.

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

Aggiunta di un nuovo messaggio di User-Defined in Visual C#

Nell'esempio di codice viene illustrato come creare un messaggio definito dall'utente con un ID maggiore di 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);  
  
        }  

Aggiunta di un nuovo messaggio di User-Defined in PowerShell

Nell'esempio di codice viene illustrato come creare un messaggio definito dall'utente con un ID maggiore di 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