هل يمكننا تمرير مجموعة إلى الإجراء المخزن في SQL Server؟
هل يمكننا تمرير مجموعة إلى الإجراء المخزن في SQL Server؟

فيديو: هل يمكننا تمرير مجموعة إلى الإجراء المخزن في SQL Server؟

فيديو: هل يمكننا تمرير مجموعة إلى الإجراء المخزن في SQL Server؟
فيديو: 1. مدخل إلى الإجراءات المخزنة Stored Procedures 2024, شهر نوفمبر
Anonim

لا يوجد دعم ل مجموعة مصفوفة في خادم قاعدة البيانات ولكن هناك عدة طرق يمكنك تمرير جمع ل proc المخزنة.

بجانب هذا ، هل يمكننا تمرير القائمة في الإجراء المخزن؟

لا ، المصفوفات / يمكن القوائم يتم تمريرها إلى SQL Server مباشرة. الخيارات التالية متاحة: تمرير مفصول بفاصلة قائمة ثم وجود دالة في SQL تقسم ملف قائمة . الفاصلة محددة قائمة سوف على الأرجح يتم تمريره كـ Nvarchar ()

ثانيًا ، كيف يمكنك تمرير قيمة سلسلة مفصولة بفاصلة إلى إجراء مخزن في SQL؟ يحصل الإجراء المخزن التالي على سجلات الموظفين الذين يتم تمرير المعرفات لهم باستخدام سلسلة مفصولة (محددة) بفاصلة.

  1. إنشاء إجراء الحصول على الموظفين.
  2. EmployeeIds VARCHAR (100)
  3. كما.
  4. يبدأ.
  5. حدد الاسم الأول واسم العائلة.
  6. من الموظفين.
  7. أين يوجد الموظف (
  8. حدد البث (العنصر بشكل صحيح)

وبالتالي ، لماذا لا ينبغي تمرير مصفوفة كبيرة إلى إجراء بالقيمة؟

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

ما هي قيم الجدول؟

أ طاولة - قيمة المعلمة هو معامل مع طاولة نوع. باستخدام هذا معامل ، يمكنك إرسال صفوف متعددة من البيانات إلى إجراء مخزن أو أمر SQL ذي معلمات في شكل ملف طاولة . يمكن استخدام Transact-SQL للوصول إلى قيم عمود طاولة - المعلمات القيمة.

موصى به: