كيف يمكنني الحصول على SQL Server 2K8 R2 لإرجاع XML هذا دون اللجوء إلى وضع التوافق

StackOverflow https://stackoverflow.com/questions/3439007

  •  27-09-2019
  •  | 
  •  

سؤال

نحن بصدد ترقية خادم SQL الخاص بنا إلى 2K8 R2 وتغير إخراج A for XML Auto Query.

يخرج الاستعلام أعمدة من ثلاثة جداول

تقوم ResultSet بإرجاع ثلاثة صفوف يكون كل عمود متطابقًا في العمودين الأخيرين من الجدول الثالث. النتائج المستخدمة لتظهر على النحو التالي

<element1 myval="Test">
    <element2 myotherval="atest">
         <element3 a="a"/>
         <element3 a="b"/>
         <element3 a="c" />
    </element2>
</element1>

لا يظهر

    <element1 myval="Test">
        <element2 myotherval="atest">
             <element3 a="a"/>
         </element2>
    </element1>
    <element1 myval="Test">
        <element2 myotherval="atest">
             <element3 a="B"/>
         </element2>
    </element1>
    <element1 myval="Test">
        <element2 myotherval="atest">
             <element3 a="C"/>
         </element2>
    </element1>

لقد كنت أحاول استخدام مسار XML ، لكنه لا يزال يعيد 3 مثيلات منفصلة من Element1 بدلاً من تجميع البيانات.

هل كانت مفيدة؟

المحلول

إذا كنت ترغب في استخدام الشجرة الفرعية لمسار XML ، فسيتعين عليك كتابة الفائزين الفرعيين لكل شاشة فرعية. لذلك في حالتك ، لديك عبارة محددة من الوالدين لـ Element1 ، وأحد الأعمدة عبارة عن مساع فرعي يحصل على كل ما يجب أن يكون في Element2 (والذي يمكن أن يكون بدوره أيضًا قاعة فرعية). إذا كنت تستخدم الفخات الفرعية وتريد إرجاع XML من هؤلاء ، فاستخدم

لمسار XML ('elementn') ، اكتب

أو سوف يهرب من رمز XML.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top