تشرح هذه المقالة كيفية إنشاء استعلام إلحاق وتشغيله. يمكنك استخدام استعلام إلحاق عندما تحتاج إلى إضافة سجلات جديدة إلى جدول موجود باستخدام بيانات من مصادر أخرى.
إذا أردت تغيير البيانات في مجموعة من السجلات الموجودة، مثل تحديث قيمة حقل، يمكنك استخدام استعلام تحديث. إذا كنت بحاجة إلى إنشاء جدول جديد من مجموعة بيانات، أو إلى دمج جدولين في جدول واحد جديد، يمكنك استخدام استعلام تكوين جدول. لمزيد من المعلومات حول استعلامات التحديث أو استعلامات تكوين الجداول، أو للحصول على معلومات عامة حول الطرق الأخرى لإضافة سجلات إلى قاعدة البيانات أو تغيير البيانات الموجودة، راجع المقطع أنظر أيضاً.
في هذه المقالة
نظرة عامة
يحدد استعلام الإلحاق السجلات من مصدر بيانات واحد أو أكثر، كما ينسخ السجلات المحددة إلى جدول موجود.
على سبيل المثال، لنفرض أن لديك قاعدة بيانات تحتوي على جدول العملاء المحتملين الجدد، كما أن لديك بالفعل جدول في قاعدة البيانات الموجودة يقوم بتخزين هذا النوع من البيانات. قد ترغب في تخزين البيانات في مكان واحد، لذلك تقرر نسخها من قاعدة البيانات الجديدة إلى الجدول الموجود. لتجنب إدخال البيانات الجديدة يدوياً، يمكنك استخدام استعلام إلحاق لنسخ السجلات.
فوائد استخدام استعلام الإلحاق
بفضل استخدام الاستعلام لنسخ البيانات، يمكنك تنفيذ ما يلي:
-
إلحاق عدة سجلات بعملية واحدة إذا كنت تنسخ البيانات يدوياً، فينبغي عليك عادةً إجراء عمليات نسخ/لصق متعددة. باستخدام استعلام، يمكنك تحديد كل البيانات مرة واحدة، ثم نسخها.
-
مراجعة التحديد قبل نسخه يمكنك عرض التحديد في طريقة عرض "ورقة البيانات"، كما يمكنك إجراء تعديلات عليه كما تقتضي الحاجة قبل نسخ البيانات. وقد يكون ذلك مفيداً إذا تضمّن الاستعلام معايير أو تعبيرات، وكنت بحاجة إلى إجراء عدة محاولات لتحقيق النتيجة التي تتوخاها. لا يمكنك التراجع عن استعلام الإلحاق. فإذا ارتكبت خطأ، عليك استعادة قاعدة البيانات من نسخة احتياطية أو تصحيح الخطأ إما يدوياً وإما باستخدام استعلام حذف.
-
استخدام المعايير لتنقية التحديد على سبيل المثال، قد تريد إلحاق سجلات العملاء الذين يعيشون في مدينتك فقط.
-
إلحاق السجلات عندما لا يكون بعض الحقول في مصادر البيانات موجوداً في جدول الوجهة على سبيل المثال، لنفترض أن جدول العملاء الموجود يتضمن أحد عشر حقلاً، والجدول الجديد الذي تريد النسخ منه لا يتضمن سوى تسعة من تلك الحقول الأحد عشر. يمكنك استخدام استعلام الإلحاق لنسخ البيانات من الحقول التسعة المطابقة وترك الحقلين الآخرين فارغين.
الخطوات الأساسية لاستخدام استعلام الإلحاق
تتبع عملية إنشاء استعلام الإلحاق الخطوات الأساسية التالية:
-
إنشاء استعلام تحديد تبدأ بتحديد البيانات التي تريد نسخها. يمكنك ضبط استعلام التحديد حسب الحاجة، وتشغيله عدة مرات كما تريد للتأكد من تحديد البيانات التي تريد نسخها.
-
تحويل استعلام التحديد إلى استعلام إلحاق بعد أن يكون التحديد جاهزا، يمكنك تغيير نوع الاستعلام إلى إلحاق.
-
اختيار حقول الوجهة لكل عمود في استعلام الإلحاق في بعض الحالات، يختار Access تلقائيا حقول الوجهة نيابة عنك. يمكنك ضبط الحقول الوجهة، أو اختيارها إذا لم يقم Access بذلك.
-
معاينة الاستعلام وتشغيله لإلحاق السجلات قبل إلحاق السجلات، يمكنك التبديل إلى طريقة عرض ورقة البيانات لمعاينة السجلات الملحقة.
هام: لا يمكنك التراجع عن استعلام الإلحاق. ضع في اعتبارك إنشاء نسخة احتياطية من قاعدة البيانات أو جدول الوجهة.
إنشاء استعلام إلحاقي وتشغيله
في هذا القسم
الخطوة 1: إنشاء استعلام لتحديد السجلات التي يجب نسخها
-
افتح قاعدة البيانات التي تحتوي على السجلات التي تريد نسخها.
-
على علامة التبويب إنشاء، في المجموعة استعلامات، انقر فوق تصميم الاستعلام.
-
انقر نقراً مزدوجاً فوق الجداول أو الاستعلامات التي تحتوي على السجلات المراد نسخها، ثم انقر فوق إغلاق.
تظهر الجداول أو الاستعلامات كنافذة واحدة أو أكثر في مصمم الاستعلام. تسرد كل نافذة الحقول الموجودة في جدول أو استعلام. يعرض هذا الرسم التوضيحي جدولاً نموذجياً في مصمم الاستعلام.
1. جدول الأصول المعروض في مصمم الاستعلام
2. شبكة تصميم الاستعلام
-
انقر نقراً مزدوجاً فوق كل حقل تريد إلحاقه. تظهر الحقول المحددة في صف الحقل في شبكة تصميم الاستعلام.
يجب أن تكون أنواع بيانات الحقول في الجدول المصدر متوافقة مع أنواع بيانات الحقول في الجدول الوجهة. تتوافق حقول النصوص مع معظم أنواع الحقول الأخرى. ولكن حقول الأرقام تتوافق مع حقول الأرقام الأخرى فقط. على سبيل المثال، يمكنك إلحاق أرقام بحقل نص، ولكن لا يمكنك إلحاق نص في حقل أرقام.
يمكنك أيضاً استخدام تعبير ما كحقل — على سبيل المثال =Date() لإرجاع تاريخ اليوم تلقائياً، كما يمكنك استخدام التعبيرات مع حقول الاستعلام أو الجدول في شبكة التصميم لتخصيص البيانات التي تحددها. على سبيل المثال، إذا كان الجدول الوجهة يحتوي على حقل يخزن سنة مكونة من أربعة أرقام وكان الجدول المصدر يحتوي على حقل تاريخ/وقت عادي، فيمكنك استخدام الدالة DatePart مع الحقل المصدر لتحديد السنة فقط.
لإضافة كل الحقول في جدول بسرعة، انقر نقراً مزدوجاً فوق العلامة النجمية (*) أعلى قائمة حقول الجدول. يعرض هذا الرسم التوضيحي شبكة التصميم مع جميع الحقول المضافة.
-
كما يمكنك إدخال معيار واحد أو أكثر بشكل اختياري في صف المعايير من شبكة التصميم. يعرض الجدول التالي بعض نماذج المعايير ويشرح تأثير كل منها على الاستعلام.
المعايير
التأثير
> 234
إرجاع كافة الأرقام الأكبر من 234. للبحث عن كافة الأرقام الأصغر من 234، استخدم < 234.
>= "تونس"
إرجاع كافة السجلات من "تونس" إلى نهاية الأبجدية.
بين التاريخين #2017/2/2# و#2017/12/1#
إرجاع التواريخ من 2 فبراير 2017 إلى 1 ديسمبر 2017 (ANSI-89). إذا كانت قاعدة البيانات تستخدم أحرف البدل ANSI-92، فاستخدم علامات الاقتباس المفردة (') بدلاً من علامات الرطل. مثال: بين التاريخين #2017/2/2# و#2017/12/1#.
Not "ليبيا"
البحث عن كافة السجلات حيث لا تتساوى محتويات الحقل تماماً مع "ليبيا". يرجع المعيار سجلات تحتوي على أحرف بالإضافة إلى "ليبيا"، مثل "ليبيا (دينار)" أو "أفريقيا (ليبيا)".
Not "ب*"
البحث عن كافة السجلات ماعدا تلك التي تبدأ بحرف T. إذا كانت قاعدة البيانات تستخدم مجموعة أحرف البدل ANSI-92، فاستخدم علامة النسبة المئوية (%) بدلاً من العلامة النجمية (*).
Not "ب*"
البحث عن كافة السجلات التي لا تنتهي بحرف t. إذا كانت قاعدة البيانات تستخدم مجموعة أحرف البدل ANSI-92، فاستخدم علامة النسبة المئوية بدلاً من العلامة النجمية.
In(الكويت، المملكة العربية السعودية)
البحث في قائمة عن كافة السجلات التي تتضمن "الكويت" أو "المملكة العربية السعودية".
Like "[أ-ث]*"
البحث في حقل نصي عن كافة السجلات التي تبدأ بالحروف من "أ" إلى "ث". إذا كانت قاعدة البيانات تستخدم مجموعة أحرف البدل ANSI-92، فاستخدم علامة النسبة المئوية بدلاً من العلامة النجمية.
Like "*أر*"
البحث عن كافة السجلات التي تتضمّن تسلسل الأحرف "أر". إذا كانت قاعدة البيانات تستخدم مجموعة أحرف البدل ANSI-92، فاستخدم علامة النسبة المئوية بدلاً من العلامة النجمية.
Like "منزل عائل?"
البحث عن كافة السجلات التي تبدأ بـ "منزل" والتي تحتوي أيضاً على سلسلة ثانية مكونة من 5 أحرف تكون الأربعة أحرف الأولى فيها "عائل" والحرف الأخير غير معروف (يُشار إليه بواسطة علامة استفهام). إذا كانت قاعدة البيانات تستخدم مجموعة أحرف البدل ANSI-92، فاستخدم التسطير السفلي (_) بدلاً من علامة الاستفهام.
#2017/2/2#
البحث عن كافة سجلات 2 فبراير 2017. إذا كانت قاعدة البيانات تستخدم مجموعة أحرف البدل ANSI-92، فقم بإحاطة التاريخ بعلامات اقتباس مفردة بدلاً من علامات الرطل (#). مثال: '2017/2/2'.
< Date() - 30
لإرجاع كافة التواريخ من أكثر من 30 يوماً مضت.
التاريخ()
إرجاع كافة السجلات التي تتضمن تاريخ اليوم.
Between Date() And DateAdd("M", 3, Date())
إرجاع كافة السجلات التي يقع تاريخها بين تاريخ اليوم وثلاثة أشهر اعتباراً من تاريخ اليوم.
Is Null
إرجاع كافة السجلات التي تحتوي على قيمة خالية (فارغة أو غير معرّفة).
Is Not Null
إرجاع كافة السجلات التي تحتوي على قيمة.
""
إرجاع كافة السجلات التي تحتوي على سلسلة ذات طول صفري. إنك تستخدم السلاسل ذات الطول الصفري عندما تحتاج إلى إضافة قيمة إلى حقل مطلوب، ولكنك لا تعرف بعد القيمة الفعلية. على سبيل المثال، قد يتطلب الحقل إدخال رقم فاكس، ولكن ربما لا يمتلك بعض العملاء جهاز الفاكس. في هذه الحالة، يجب إدخال زوج من علامات الاقتباس المزدوجة بدون ترك مسافة بينهما ("") بدلاً من رقم.
-
على علامة التبويب تصميم الاستعلام ، في المجموعة نتائج ، انقر فوق تشغيل .
-
تحقق من أن الاستعلام أرجع السجلات التي تريد نسخها. إذا كنت بحاجة إلى إضافة حقول إلى الاستعلام أو إزالتها منه، فعد إلى طريقة عرض التصميم وأضف الحقول كما ورد في الخطوة السابقة، أو حدد الحقول التي لا تريدها واضغط على مفتاح الحذف DELETE لإزالتها من الاستعلام.
الخطوة 2: تحويل استعلام التحديد إلى استعلام إلحاقي
-
على علامة التبويب الشريط الرئيسي، في المجموعة طرق العرض، انقر فوق طريقة عرض، ثم انقر فوق طريقة عرض التصميم.
-
في علامة التبويب تصميم الاستعلام ، في المجموعة نوع الاستعلام ، انقر فوق إلحاق.
يظهر مربع الحوار إلحاق.
-
بعد ذلك، يمكنك تحديد ما إذا كنت تريد إلحاق السجلات بجدول في قاعدة البيانات الحالية أم بجدول في قاعدة بيانات أخرى.
قم بأحد الإجراءات التالية:
-
في مربع الحوار إلحاق، انقر فوق قاعدة البيانات الحالية وحدد جدول الوجهة من مربع التحرير والسرد اسم الجدول، ثم انقر فوق موافق.
-أو-
-
في مربع الحوار إلحاق، انقر فوق قاعدة بيانات أخرى.
-
في المربع اسم الملف، أدخل الموقع واسم قاعدة بيانات الوجهة.
-
في مربع التحرير والسرد اسم الجدول، أدخل اسم جدول الوجهة، ثم انقر فوق موافق.
-
الخطوة 3: اختيار حقول الوجهة
تتوقف الطريقة التي تختار بها الحقول الوجهة على الطريقة التي استخدمتها لإنشاء استعلام التحديد في الخطوة 1.
إذا قمت بـ... |
Access... |
---|---|
إضافة كافة الحقول من الاستعلام أو الجدول المصدر |
يقوم بإضافة كافة الحقول في الجدول الوجهة إلى الصف إلحاق بـ في شبكة التصميم |
إضافة حقول فردية إلى الاستعلام أو استخدام تعبيرات، وكانت أسماء الحقول في الجدولين المصدر والوجهة متطابقة |
يقوم تلقائياً بإضافة الحقول الوجهة المتطابقة إلى الصف إلحاق بـ في الاستعلام |
إضافة حقول فردية أو استخدام تعبيرات، وكان أي من الأسماء الموجودة في الجدولين المصدر والوجهة غير متطابق |
يقوم بإضافة الحقول المتطابقة، ويترك الحقول غير المتطابقة فارغة |
إذا ترك Access الحقول فارغة، يمكنك النقر فوق خلية في الصف إلحاق بـ وتحديد حقل وجهة.
يوضح هذا الرسم التوضيحي كيفية النقر فوق خلية في الصف إلحاق بـ وتحديد حقل وجهة.
ملاحظة: إذا تركت الحقل الوجهة فارغاً، فلن يقوم الاستعلام بإلحاق بيانات بهذا الحقل.
الخطوة 4: معاينة استعلام الإلحاق وتشغيله
-
لمعاينة التغييرات، انتقل إلى طريقة عرض ورقة البيانات.
تلميح: لتبديل طرق العرض سريعاً، انقر بزر الماوس الأيمن فوق علامة التبويب الموجودة في أعلى الاستعلام، ثم انقر فوق طريقة العرض التي تريدها.
-
ارجع إلى طريقة عرض التصميم، ثم انقر فوق تشغيل لإلحاق السجلات.
ملاحظة: أثناء تشغيل استعلام يُرجع كمية كبيرة من البيانات، قد تظهر رسالة خطأ تشير إلى تعذر التراجع عن الاستعلام. حاول زيادة الحد في مقطع الذاكرة إلى 3 ميغابايت للسماح باستمرار الاستعلام.
منع وضع التعطيل من حظر استعلام
إذا حاولت تشغيل استعلام إلحاق دون جدوى، فتحقق في شريط معلومات Access من وجود الرسالة التالية:
تم منع تنفيذ الإجراء أو الحدث من قِبَل "وضع تعطيل".
لتصحيح هذه المشكلة، انقر فوق تمكين المحتوى في "شريط الرسائل" لتمكين الاستعلام.
ملاحظة: عند تمكين الاستعلام الإلحاقي، يتم أيضاً تمكين كافة محتويات قاعدة البيانات الأخرى.
إذا لم يظهر "شريط الرسائل"، فقد يكون مخفياً. يمكنك إظهاره، ما لم يتم تعطيله كذلك. إذا تم تعطيل "شريط الرسائل"، فبإمكانك تمكينه.