Share via


訊息類型

使用 Service Broker 之應用程式的通訊方式是將訊息作為交談的一部份來相互傳送。交談的參與者必須同意每則訊息的名稱和內容。「訊息類型物件」定義了訊息類型的名稱以及訊息所包含的資料類型。訊息類型保存於建立訊息類型的資料庫中。您可以在參與交談的各資料庫中建立相同的訊息類型。

每個訊息類型都指定了 SQL Server 對該類型之訊息所執行的驗證。SQL Server 可以驗證訊息是否包含有效的 XML、是否包含符合特定結構描述的 XML,或驗證訊息是否完全不包含資料。對於任意或二進位資料,訊息類型可指定 SQL Server 不驗證訊息內容。

會在目的地服務接收訊息時執行驗證。如果訊息內容與指定的驗證不符,Service Broker 會將錯誤訊息傳回至傳送此訊息的服務。

ms166066.note(zh-tw,SQL.90).gif重要事項:
不論指定的驗證為何,應用程式都必須確認訊息內容適用於應用程式,之後程式才會使用這些資料。

對於空訊息類型,訊息主體不可以包含資料。對於指定格式正確之 XML 的訊息類型,訊息主體必須是格式正確的 XML。對於指定符合特定結構描述集合之 XML 的訊息類型,訊息主體必須包含對集合中之其中一個結構描述有效的格式正確 XML。對於未指定驗證的訊息類型,SQL Server 會接受任何訊息內容,包括二進位資料、XML 或空訊息。

Service Broker 提供名為 DEFAULT 的內建訊息類型。如果未在 Service Broker SEND 命令中指定訊息類型,系統會使用 DEFAULT 訊息類型。

請參閱

概念

合約
Broker 訊息

其他資源

CREATE MESSAGE TYPE (Transact-SQL)

說明及資訊

取得 SQL Server 2005 協助