Ruby on rails 3.1 如何获取sql查询返回的完整xml数据

Ruby on rails 3.1 如何获取sql查询返回的完整xml数据,ruby-on-rails-3.1,Ruby On Rails 3.1,我有一个ms sql查询,它返回XML数据。我在rails 3.1.1中运行该查询,如下所示: xmlstring = PurchaseOrder.find_by_sql(["select cast((select(SELECT * from purchase_orders for XML path('purchase_order'),type,elements xsinil)for xml path('purchase_orders'))as xml)as xmlcol]) 其中,Purc

我有一个ms sql查询,它返回XML数据。我在rails 3.1.1中运行该查询,如下所示:

xmlstring  = PurchaseOrder.find_by_sql(["select cast((select(SELECT * from purchase_orders for XML path('purchase_order'),type,elements xsinil)for xml path('purchase_orders'))as xml)as xmlcol])
其中,
PurchaseOrder
是一个模型。此查询返回
xmlcol
列中的XML。但是检索到的XML不完整,导致了问题。我运行此代码以了解XML是否正确:

puts xmlstring[0].xmlcol
并得出结论,我的XML不完整。当我在SQLServer2008查询编辑器中运行相同的查询时,我得到了完整且正确的XML

编辑1-

如果预期的XML是-

<purchase_orders>
 <purchase_order>
  .
  .
 </purchase_order>
 .
 .
 .
 .
 <purchase_order>
  .
  .
 </purchase_order>
</purchase_orders>

.
.
.
.
.
.
.
.
但XML的结果是这样的-

<purchase_orders>
  <purchase_order>
    .
    .
   </purchase_order>
   .
   .
   </purchase

.
.
.
.

put
的结果是什么?我通过在查询的开头添加“set text 100000”得到了解决方案。