xml auto modu buluşsal şekillenmesinde döndü
auto modu, döndürülen xml, sorguya dayalı şeklini belirler. Öğe iç içe şeklini belirlemede, auto modu buluşsal bitişik satır sütun değerlerini karşılaştırın. Tüm türleri sütunlar dışında ntext, metin, Resim, ve xml, karşılaştırılır. Sütun türü (n)varchar(max) ve varbinary(max) karşılaştırılır.
Aşağıdaki örnekte, sonuç xml şeklini belirleyen auto modu buluşsal gösterilmektedir:
SELECT T1.Id, T2.Id, T1.Name
FROM T1, T2
WHERE ...
FOR XML AUTO
ORDER BY T1.Id
Burada yeni belirlemek için <T1> öğesini başlatır, T1, tüm sütun değerleri dışında ntext, metin, Resim ve xml, T1 tablo anahtarı belirtilmezse, karşılaştırılır. Ardından, bu kabul ad sütun nvarchar(40) ve select deyimi bu satır kümesi döndürür:
T1.Id T1.Name T2.Id
-----------------------
1 Andrew 2
1 Andrew 3
1 Nancy 4
auto modu buluşsal yöntemler, T1, kimliği ve adı sütun için tüm değerleri tablo karşılaştırın. Çünkü ilk iki satır KIMLIĞI ve adı sütun için aynı değerleri bir <T1> sahip iki öğe <T2> sonuçta alt öğeler eklenir.
Döndürülen xml aşağıdadır:
<T1 Id="1" Name="Andrew">
<T2 Id="2" />
<T2 Id="3" />
</T1>
<T1 Id="1" Name="Nancy" >
<T2 Id="4" />
</T>
Şimdi, adı sütunu olduğunu varsayalım metin türü. auto modu buluşsal bu tip değerleri karşılaştırın yoktur. Bunun yerine, bu değerleri aynı olmadığını varsayar. Bu aşağıdaki gösterildiği gibi xml üretimi sonucu verir:
<T1 Id="1" Name="Andrew" >
<T2 Id="2" />
</T1>
<T1 Id="1" Name="Andrew" >
<T2 Id="3" />
</T1>
<T1 Id="1" Name="Nancy" >
<T2 Id="4" />
</T1>