且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

以XML格式获取SQL结果

更新时间:2023-01-29 21:19:15

DECLARE @Employee TABLE (id Bigint IDENTITY(1,1), Name NVARCHAR(50))
INSERT INTO @Employee (name) SELECT 'ABC'
INSERT INTO @Employee (name) SELECT 'DEF'
INSERT INTO @Employee (name) SELECT 'GHI'
INSERT INTO @Employee (name) SELECT 'JKL'
INSERT INTO @Employee (name) SELECT 'MNO'


select * from @Employee For XML Path('Employee')

>

结果将是



Result will be

<Employee>
  <id>1</id>
  <Name>ABC</Name>
</Employee>
<Employee>
  <id>2</id>
  <Name>DEF</Name>
</Employee>
<Employee>
  <id>3</id>
  <Name>GHI</Name>
</Employee>
<Employee>
  <id>4</id>
  <Name>JKL</Name>
</Employee>
<Employee>
  <id>5</id>
  <Name>MNO</Name>
</Employee>







select * from @Employee For XML RAW(''Employee'')



结果将是



Result will be

<Employee id="1" Name="ABC" />
<Employee id="2" Name="DEF" />
<Employee id="3" Name="GHI" />
<Employee id="4" Name="JKL" />
<Employee id="5" Name="MNO" />







select * from @Employee For XML AUTO



结果将是



Result will be

<_x0040_Employee id="1" Name="ABC" />
<_x0040_Employee id="2" Name="DEF" />
<_x0040_Employee id="3" Name="GHI" />
<_x0040_Employee id="4" Name="JKL" />
<_x0040_Employee id="5" Name="MNO" />


一旦将数据存储在DataSet中,就可以始终使用WriteXml将其转换为XML.我不想再次猜测您在做什么,但是如果您已经在SQL中查询了XML,为什么还要查询XML数据集?
Once you have your data in a DataSet, you can always use the WriteXml to get it into XML. I don''t want to second guess what you are doing, but why would you want to query the dataset in XML if you already queried it in your SQL?