共用方式為


使用訊息

適用於:sql ServerAzure SQL 資料庫 Azure SQL 受控執行個體 Microsoft Fabric 中的 Azure Synapse Analytics SQL 資料庫

在 SMO 中,系統訊息會以 SystemMessageCollection 屬於 Server 物件的 物件表示。 因為系統訊息無法修改, 所以 SystemMessage 物件屬性是唯讀的。

使用者定義訊息會以程序設計方式在 SMO 中由 UserDefinedMessageCollection 物件表示。 您可以逐一查看集合來探索現有的使用者定義訊息。 您可以藉由具現化新的UserDefinedMessage物件並設定適當的屬性,來建立新的使用者定義訊息。

範例

針對下列程式代碼範例,您必須選取程式設計環境、程式設計範本和程式設計語言,才能建立您的應用程式。 如需詳細資訊,請參閱 在Visual Studio .NET 中建立Visual C# SMO 專案。

在 Visual Basic 中尋找特定系統訊息

程式代碼範例示範如何依標識碼識別系統訊息,並顯示訊息。

'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)

在 Visual C 中尋找特定系統訊息#

程式代碼範例示範如何依標識碼識別系統訊息,並顯示訊息。

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

在 PowerShell 中尋找特定系統訊息

程式代碼範例示範如何依標識碼識別系統訊息,並顯示訊息。

# 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  

在 Visual Basic 中新增使用者定義訊息

程式代碼範例示範如何建立標識碼50000的使用者定義訊息。

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

在 Visual C 中新增使用者定義訊息#

程式代碼範例示範如何建立標識碼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);  
  
        }  

在 PowerShell 中新增使用者定義訊息

程式代碼範例示範如何建立標識碼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