關於 Contact.AdditionalContactInfo XML 資料行
Person 資料表儲存一般客戶的連絡資訊,例如名稱、電話號碼,以及電子郵件地址。此資料表也有一個稱為 AdditionalContactInfo 的 xml 類型資料行。
客戶可能會有多個電話、行動電話、電子郵件及呼叫器。因為設計當時可能不知道額外連絡點的確切數目,所以不可能知道需要有幾個資料行來儲存該資訊。您可以建立單一的 XML 類型資料行,以儲存包含每個客戶之額外連絡資訊的 XML 文件,而不是建立包含那項資訊的數個資料行,然後儲存 NULL 值。
在 AdventureWorks2008R2 資料庫中,此資料行稱為 AdditionalContactInfo。此項額外的連絡資訊之後可能會與其他應用程式共用。例如,此項資訊對顧客關係管理 (CRM) 應用程式很有用。
CRM 應用程式也可能會在此資料行中儲存連絡資訊。例如,與客戶連絡的日期以及交談的筆記,都是可以包括在內的資訊。
這是 xml 類型的資料行。您可以在此 Microsoft 網站檢視此資料行所使用的結構描述。此資料行使用以下結構描述:
ContactInfo 結構描述
ContactRecord 結構描述
ContactTypes 結構描述
此資料行中儲存的範例 XML 執行個體
以下是範例 XML 執行個體:
<AdditionalContactInfo xmlns="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactInfo" xmlns:crm="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactRecord" xmlns:act="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactTypes">
<act:telephoneNumber>
<act:number>111-111-1111</act:number>
<act:SpecialInstructions>
Call only after 5PM.
</act:SpecialInstructions>
</act:telephoneNumber>
請注意,客戶在此位址有另一個首頁。
<act:homePostalAddress>
<act:Street>123 Oak</act:Street>
<act:City>Seattle</act:City>
<act:StateProvince>WA</act:StateProvince>
<act:PostalCode>777</act:PostalCode>
<act:CountryRegion>USA</act:CountryRegion>
<act:SpecialInstructions>如果主要位址的對應
失敗,請嘗試這一個 </act:SpecialInstructions>
</act:homePostalAddress>
客戶會提供額外的電子郵件地址。
<act:eMail>
<act:eMailAddress>customer1@xyz.com</act:eMailAddress>
<act:SpecialInstructions>緊急問題請勿傳送電子郵件。而改用
此緊急連絡電話
<act:telephoneNumber>
<act:number>112-111-1111</act:number>
</act:telephoneNumber>。
</act:SpecialInstructions>
</act:eMail>
<crm:ContactRecord date="2001-06-02Z">此客戶有興趣
為家人購買高階自行車。客戶
在銷售方面會連絡 Mike。
</crm:ContactRecord>
</AdditionalContactInfo>
執行下列查詢以尋找更多的 XML 執行個體:
USE AdventureWorks2008R2;
GO
SELECT AdditionalContactInfo
FROM Person.Person
WHERE AdditionalContactInfo IS NOT NULL;