خطط الترحيل للكائنات بروابط مضمنة في XML
عند ترحيل الكائنات حيث يتم تسجيل مراجع المفاتيح الخارجية في حقل قائم على XML للكائن، تكون التعليمات الفرعية مطلوبة لتحديد مراجع المفتاح الخارجي لكي يتمكن مساعد ترحيل التكوين من استيعاب العلاقات. ويتعارض ذلك مع المفاتيح الخارجية المباشرة حيث يمكن أن يتم من خلال مساعد ترحيل التكوين تحديد العلاقات باستخدام القيود. تقدم الأوامر غرضين. يضمن تحديد التعليمات تضمين الكائنات المرتبطة في الترحيل، إذا كان ملائمًا. إذا كنت تعلم أن الكائنات المرتبطة مضمنة بسبب معايير أخرى، تسمح التعليمات لمساعد ترحيل المحتوى بتجميع الكائنات المرتبطة في المعاملات. ويساعد ذلك في عملية التطبيق في وقت الاستيراد لضمان تجميع الكائنات المرتبطة معًا. مع ذلك، تتضمن عملية التطبيق خطوات تكرارية لمحاولة التغلب على تبعيات مثل هذه ليصبح تحديد التعليمات غير هام لهذا الغرض.
وفيما يلي خيارات لإنشاء خطط ترحيل بروابط متضمنة في XML:
- خيار استخدام كائن العمل المنطقي المحدد في الأمر الأساسي لتحديد الكائن الذي تقوم بنسخه. باستخدام هذا الخيار، يمكن أن يتم من خلال الأوامر الثانوية استخدام معايير المسارX لتحديد المفتاح الخارجي المرتبط. عند استخدام هذه الطريقة، يجب إنشاء خطة ترحيل منفصلة لكل كائن عمل منطقي. (لمزيد من المعلومات، راجع فهم عملية ترشيح كائن العمل.) لن يتم استخدام هذا الخيار إلا في حالات معزولة.
- خيار آخر هو إنشاء خطة ترحيل تستخدم كائن العمل الفعلي باعتباره الأمر الأساسي، ثم تضمين أمر ثانوي لكائن العمل المنطقي الحقيقي، باستخدام اجتياز SQL لربط الكائن بنفسه بواسطة مفتاحه الأساسي. لاحظ أنه باستخدام هذا الأسلوب، ستبقى السجلات التي تشير إلى كائن العمل المنطقي مضمنة فقط في ملف التصدير مرة واحدة. في هذه المرحلة يمكن أن يتم من خلال الأوامر الثانوية الإضافية استخدام علامة المسارX لتحديد بيانات المفتاح الخارجي. يضمن استخدام كائن العمل الفعلي كأمر أساسي مراعاة كل السجلات في كائن الصيانة. لن يتم تطبيق الأوامر الثانوية مع كائن العمل المنطقي وعلامات مسارX إلا على السجلات القابلة للتطبيق على كائن العمل هذا. تظهر فائدة هذا الخيار لكائنات الصيانة التي لها عدد قليل من كائنات العمل المنطقية بمفاتيح خارجية مختلفة.
- خيار آخر هو استخدام كائن العمل الفعلي في الأمر الأساسي واستخدام عبارات SQL الأولية في معايير الاجتياز الأمر الثانوي لتحديد المفاتيح الخارجية باستخدام أوامر السلسلة الفرعية. يلزم أمر ثانوي منفصل لكل SQL مقابل لكل حدوث عنصر. استخدام هذا الأسلوب له نفس المزايا السابقة والتي تتمثل في تضمين كل سجلات كائن الصيانة في الترحيل. على الرغم من ذلك، يمكن أن يكون هذا الأسلوب مفيدًا لكائنات الصيانة بعدد أكبر من كائنات العمل المتوقعة حيث يكون لكل كائن عمل مفتاح خارجي واحد أو أكثر. يكون ذلك مفيدًا بشكلٍ خاص إذا تم من خلال كائنات عمل متعددة الإشارة إلى نفس المفتاح الخارجي. في هذه الحالة يكون أمر واحد فقط مطلوبًا لذلك المفتاح الخارجي. لاحظ أنه يمكن أن يتم من خلال خطة الترحيل الفردية استخدام هذا الأسلوب وأسلوب المسارX للعناصر المختلفة.
يمكن أن يكون لطلب ترحيل خطط ترحيل متعددة لنفس كائن الصيانة. يتيح ذلك بعض المرونة وقابلية الصيانة طويلة الأمد حتى يمكن استخدام الأساليب أعلاه في خطط الترحيل المتعددة. تأمل المثال التالي:
- يوفر المنتج لكائنات العمل الأساسية مفاتيح خارجية محددة في حقل XML كما يوفر خطة الترحيل المناسبة مع التعليمات. ويتم من خلال النسخة المعدلة توسيع كائن العمل هذا أو ربما إنشاء كائن العمل الخاص بها لنفس كائن الصيانة وتضمين المفاتيح الخارجية الإضافية المختلفة في XML. وبدلاً من استنساخ خطة الترحيل الأساسية وإضافة الأوامر الإضافية للمفاتيح الخارجية الإضافية، يمكن أن يتم من خلال النسخة المعدلة إنشاء خطة ترحيل ثانية لكائن الصيانة مع المفاتيح الخارجية الإضافية المحددة. يجب تحديد طلب ترحيل لتضمين خطتي الترحيل. في هذه الحالة إذا كان للنسخة المعدلة كائن عمل مخصص واحد، يمكن من خلالها اختيار استخدام كائن العمل المخصص كالأمر الأساسي كما هو موضح أعلاه في الخيار الأول.