إدراج القيم في أكثر من جدولين باستخدام استعلام واحد

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

  •  23-09-2019
  •  | 
  •  

سؤال

هل من الممكن إدراج القيم في جداول مختلفة باستخدام mySQL Qyery ؟؟

لا يوجد حل صحيح

نصائح أخرى

نعم ، ولكن تحتاج إلى إنشاء وظائف مخصصة تدخل القيم إلى الجداول الأخرى كنتيجة جانبية.

الفكرة الأساسية هي أنك تريد إدراج نتيجة الوظيفة في الجدول الذي تقوم بإدراج بيانات أخرى

insert into table (resulting_value) values (my_function(parameters))

يمكنك قراءة المزيد عن وظائف مخزنة من وثائق MySQL

لا يوجد واحد الاستعلام الذي يمكنه القيام بذلك ، ولكن على افتراض أنك تعمل مع PHP ، يمكنك الحصول على المفتاح الأساسي لآخر صف تم إدخاله باستخدام mysql_insert_id() ثم يمكنك بناء الاستعلام الثاني مع هذا الحقل.

ربما يمكنك القيام بذلك باستخدام مشغل (على سبيل المثال ، أي أن تصدر عبارة إدراج SQL واحد ويتم تنفيذ الإدراج اللاحقة في قاعدة البيانات) ، طالما

  1. يمكن اشتقاق قيم الإدراج اللاحقة من قيمة الإدراج السابق
  2. لا تمانع في العيش مع المشكلات التي قد يؤدي إليها مثل هذا النهج (رسائل خطأ غير واضحة عندما يفشل الزناد ، وفشل الإدراج الصامت ، ومشكلات الأداء ، إلخ.)

ال Insert الأوامر يسمح فقط لجدول هدف واحد لإدراج البيانات ...

INSERT INTO target_table () VALUES();

يمكن القيام بديل جيد أثناء استخدام المشغلات.

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