الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف انفذ جملة استعلام insert into مع اختلاف عدد الحقول ؟

مغلق
بدأه اسامه في 18 يوليو 2007 · 4 رد · 874 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

لدي قاعدة بيانات فيها جدولين :

الاول :

mytbl1 وفيه الحقول التالية : fld1,fld2,fld3

الثاني :

mytbl2 وفيه الحقول التالية : fld1,fld2,fld3,fld4

انا اريد ان انسخ جميع محتويات الجدول الاول الى الجدول الثاني بدون ما احدد اسماء الحقول ،

الجملة التي التي استخدمتها هي :

INSERT INTO mytbl2 SELECT * FROM mytbl1

طبعا مشكلة اختلاف عدد الحقول يمنع من تنفيذ هذه الجملة

فما الحل اريده ان ينفذ مع تجاهل الحقول الزيادة

في انتظار رد الخبراء للخروج من هذا المشكلة ة ...هل من حل عبقري

#2

I think you have to write

insert into  mytbl2 (filed1,field2,field3) select * from mytbl1

I think it's the only way

#3

الامر لذلك كما ذكر الاخ عماد بالاضافة الى اضافة الحقول في select

insert into mytbl2 (filed1,field2,field3) select filed1,field2,field3 from mytbl1

لكن لم اعرف هذا ما تريد ام ماذا تقصد بدون تحديد اسماء الحقول

#4

اشكركم على الرد .... ولكن انا ابحث عن طريقة تغنيني ان اسرد له اسماء الحقول .. كما نبهت سابقا في رسالتي (انا اريد ان انسخ جميع محتويات الجدول الاول الى الجدول الثاني بدون ما احدد اسماء الحقول )

لانه يوجد جداول عدد الحقول فيها كبير 30 حقل ليس من المعقول ان اسرد كل هذه الاسماء الامر صعب ....الذي اريده طريقة تغنني عن ذكر اسماء الحقول ....اكيد فيه حل ...بس محتاج لشوية تفكير من خبير في جمل SQL

اكرر الشكر وفي انتظار المساعدة

#5

طريقة مباشرة ما في لكن بامكانك لاختصار سرد الحقول ان تعمل view على الجدول الذي به حقول اكثر

CREATE VIEW table2V 
AS SELECT f1,f2,f3 FROM table2

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…