SQL的XML Select for (SQL2000/SQL2005)

參考網站:連結

SQL 2000+

-- 預設用XML attribute儲存欄位資料的XML顯示

SELECT
       employee_id,
       employee_name,
       email,dept_no
FROM
       emp_reference
FOR XML AUTO -- 輸出為XML

結果:

<emp_reference>
  <employee_id>080001</employee_id>
  <employee_name>白XX</employee_name>
  <email>hoooo</email>
  <dept_no>PA99</dept_no>
</emp_reference>
<emp_reference>
  <employee_id>081002</employee_id>
  <employee_name>歐XX</employee_name>
  <email>woooo</email>
  <dept_no>PP88</dept_no>
</emp_reference>
<emp_reference>
  <employee_id>082003</employee_id>
  <employee_name>唐XX</employee_name>
  <email>sooooo</email>
  <dept_no>BC40</dept_no>
</emp_reference>

-- 改以子元素儲存欄位資料的XML顯示

SELECT
       employee_id,
       employee_name,
       email,dept_no
FROM
       emp_reference
FOR XML AUTO, ELEMENTS -- 輸出為XML且以子元素方式顯示

結果:

<emp_reference employee_id="080001" employee_name="白XX" email="hoooo" dept_no="PA99" />
<emp_reference employee_id="081002" employee_name="歐XX" email="woooo" dept_no="PP88" />
<emp_reference employee_id="082003" employee_name="唐XX" email="sooooo" dept_no="BC40" />

SQL 2005+

SELECT
       employee_id,
       employee_name,
       email,dept_no
FROM
       emp_reference
-- TYPE:XML結果轉為SQLXML資料型態
-- ROOT:XML結果放入此Root Element
FOR XML AUTO,TYPE,ROOT('emp_list')

結果:

<emp_list>
  <emp_reference employee_id="080001" employee_name="白XX" email="hoooo" dept_no="PA99" />
  <emp_reference employee_id="081002" employee_name="歐XX" email="woooo" dept_no="PP88" />
  <emp_reference employee_id="082003" employee_name="唐XX" email="sooooo" dept_no="BC40" />
</emp_list>

沒有留言:

橫式廣告