كيفية نسخ بيانات جدول إلى جدول آخر في لغة البرمجة SQL

اقرأ في هذا المقال


كيفية نسخ بيانات جدول إلى جدول آخر في لغة البرمجة SQL

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

وعند القيام بنسخ البيانات من جدول لآخر يستطيع المستخدم من القيام بتحديد الأسطر و الحقول التي سيتم نسخها، أي أنه غير مجبر على نسخ كل بيانات الجدول في جدول آخر، بالإضافة إلى ذلك, فإن نسخ القيم من جدول إلى جدول آخر لا يؤثر إطلاقاً على القيم الموجودة في الجدول الذي سيتم النسخ إليه، ويُعد نسخ البيانات مفيد جداً عندما يتعامل المستخدم مع عدة جداول مترابطة ويرغب بدمجها مع بعضها في جدول جديد لعرضها بشكل مفهوم و مرتب.

الشكل العام لتجميع الحقول في لغة البرمجة SQL

إذا كان الجدولين متطابقين في الشكل فإن الشكل العام لتجميع الحقول سيكون كالتالي:

INSERTINTO table2 SELECT * FROM table1 WHERE condition;

وإذا كان الجدولين غير متطابقين أو يرغب المستخدم بتحديد الأعمدة التي سيتم النسخ منها و إليها، فإن الشكل العام لتجميع الحقول سيكون على النحو التالي:

INSERTINTO table2 (column1, column2, column3, ...) SELECT column1, column2, column3, ... FROM table1 WHERE condition; 
  • حيث مكان الكلمة (table1) يتم وضع اسم الجدول الذي سيقوم المستخدم بنسخ البيانات منها.
  • مكان الكلمة (table2) يتم وضع اسم الجدول الذي سوف يتم نسخ البيانات فيه.
  • بعد الكلمة (WHERE) من الممكن أن يقوم المستخدم بوضع شروط لتحديد القيم التي سيتم نسخها من الجدول (table1).

وفيما يلي مثال على ذلك:

INSERTINTO table2 //table 2 فهنا قام المستخدم قام بتحديد أنه سيتم وضع البيانات المنسوخة في الجدولSELECT * FROM table1; //قام المستخدم بتحديد أنه سيتم نسخ كل بيانات الجدول table1SELECT * FROM table2; // بعد النسخ table2 قام المستخدم بعرض كل البيانات التي أصبح يحتويها الجدول 

المصدر: SQL INSERT INTO SELECT StatementINSERT INTO SELECT statement overview and examplesSQL | INSERT INTO StatementSQL Server INSERT INTO SELECT


شارك المقالة: