Delen via


Using Messages

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsSQL-database in Microsoft Fabric Preview

In SMO worden systeemberichten weergegeven door het SystemMessageCollection object dat deel uitmaakt van het Server-object . Omdat de systeemberichten niet kunnen worden gewijzigd, zijn objecteigenschappen van SystemMessage alleen-lezen.

Door de gebruiker gedefinieerde berichten worden programmatisch weergegeven in SMO door het UserDefinedMessageCollection object. Bestaande door de gebruiker gedefinieerde berichten kunnen worden gedetecteerd door de verzameling te doorlopen. Nieuwe door de gebruiker gedefinieerde berichten kunnen worden gemaakt door een nieuw UserDefinedMessage-object te instantiƫren en de juiste eigenschappen in te stellen.

Examples

Voor de volgende codevoorbeelden moet u de programmeeromgeving, de programmeersjabloon en de programmeertaal selecteren om uw toepassing te maken. Zie Een Visual C# SMO-project maken in Visual Studio .NETvoor meer informatie.

Een bepaald systeembericht zoeken in Visual Basic

In het codevoorbeeld ziet u hoe u een systeembericht op id-nummer identificeert en het bericht weergeeft.

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

Een bepaald systeembericht zoeken in Visual C#

In het codevoorbeeld ziet u hoe u een systeembericht op id-nummer identificeert en het bericht weergeeft.

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

Een bepaald systeembericht zoeken in PowerShell

In het codevoorbeeld ziet u hoe u een systeembericht op id-nummer identificeert en het bericht weergeeft.

# 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  

Een nieuw User-Defined bericht toevoegen in Visual Basic

In het codevoorbeeld ziet u hoe u een door de gebruiker gedefinieerd bericht maakt met een id die groter is dan 50000.

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

Een nieuw User-Defined-bericht toevoegen in Visual C#

In het codevoorbeeld ziet u hoe u een door de gebruiker gedefinieerd bericht maakt met een id die groter is dan 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);  
  
        }  

Een nieuw User-Defined-bericht toevoegen in PowerShell

In het codevoorbeeld ziet u hoe u een door de gebruiker gedefinieerd bericht maakt met een id die groter is dan 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