إنشاء جداول أو فهارس أو تعديلها باستخدام استعلام تعريف البيانات

هام: تمت ترجمة هذه المقالة ترجمة آلية، راجع إقرار إخلاء المسؤولية. يرجى الاطلاع على النسخة الإنجليزية من هذه المقالة. هنا للرجوع إليها.

في Microsoft Office Access 2007، من السهل ل# انشاء و# تعديل الجداول و# القيود و# الفهارس في طريقه عرض التصميم، و# من اجل انشاء علاقات ب# استخدام النافذة "العلاقات". بدلا من ذلك، يمكنك انشاء و# تعديل هذه الوحدات نفسها ب# كتابه استعلامات تعريف البيانات في طريقه عرض SQL.

استعلامات تعريف البيانات تصف هذه المقاله، و# يوضح كيفيه استخدام مثل هذه الاستعلامات ل# انشاء الجداول و# الفهارس، و# القيود و# العلاقات. هذه المقاله ايضا تساعد علي تحديد متي يجب استخدام استعلام تعريف بيانات.

ماذا تريد أن تفعل؟

معرفه متي يجب استخدام استعلام تعريف البيانات

إنشاء جدول أو تعديله

إنشاء فهرس

إنشاء قيد أو علاقة

معرفه متي يجب استخدام استعلام تعريف البيانات

ب# خلاف الاستعلامات الاخري، لا يقوم استعلام تعريف بيانات ب# استرداد البيانات. استخدام استعلامات معظم لغه معالجه البيانات (DML)، الذي يحتوي علي الاوامر لغه الاستعلامات المركبه (SQL) التي تحدد كيفيه دمج البيانات من كائنات قاعده البيانات الموجوده و# معالجتها ل# ارجاع النتائج البيانات الذي تريده. استخدام استعلامات تعريف البيانات لغه تعريف البيانات (DDL)، الذي يحتوي علي اوامر SQL التي تحدد تعريف كائنات قاعده البيانات التي تخزن او فهرسه بيانات، و# اوامر SQL التحكم في وصول المستخدم الي كائنات قاعده البيانات. في Office Access 2007، يعرف استعلام تعريف بيانات او تغيير تعريف كائن قاعده بيانات.

ب# شكل عام، يجب عليك استخدام الواجهات تصميم رسوميه يوفر ذلك Office Access 2007 (علي سبيل المثال، و# طريقه عرض التصميم والنافذه "علاقات") ل# انشاء الجداول و# القيود، و# فهارس و# علاقات. و# مع ذلك، اذا كان لديك الجداول التي قمت ب# حذف و# اعاده انشاء ب# شكل منتظم، استخدام هذه الواجهات قد تصبح وقتا طويلا. ب# استخدام استعلام تعريف بيانات، يمكنك كتابه استعلام مره واحده، و# قم ب# تشغيله مره اخري عند الضروره. ضع في اعتبارك استخدام استعلام تعريف بيانات فقط اذا كنت ملما ب# استخدام عبارات SQL و# اذا كنت تخطط ل# حذف و# اعاده انشاء جداول معينه او قيود الفهارس ب# شكل منتظم.

هام: استخدام استعلامات تعريف البيانات ل# تعديل كائنات قاعده البيانات يمكن ان تكون غير امنه، ل# ان الاجراءات غير مصحوبه ب# مربعات حوار التاكيد. اذا ارتكبت خطا ما، يمكنك فقدان البيانات او تغيير تصميم جدول دون قصد. يجب توخي الحذر عند استخدام استعلام تعريف بيانات ل# تعديل الكائنات في قاعده البيانات. اذا لم تكن مسؤولا ل# المحافظه علي قاعده البيانات الذي تستخدمه، ف# يجب عليك الرجوع مع مسؤول قاعده البيانات قبل تشغيل استعلام تعريف بيانات. ب# الاضافه الي ذلك، ف# من جيد انشاء نسخه احتياطيه ل# احد الجداول التي تكون علي وشك تشغيل استعلام ك#.

أعلى الصفحة

إنشاء جدول أو تعديله

لإنشاء جدول، استخدم الأمر CREATE TABLE. ويكون بناء جملة الأمر CREATE TABLE على النحو التالي:

CREATE TABLE table_name
(field1 type [(size)] [NOT NULL] [index1]
[, field2 type [(size)] [NOT NULL] [index2]
[, ...][, CONSTRAINT constraint1 [, ...]])

يتم العناصر المطلوبه فقط الامر "انشاء جدول" الامر "انشاء جدول" نفسه اسم الجدول، و# حقل واحد علي الاقل و# نوع البيانات ل# كل حقل. ساعدنا القاء نظره علي مثال بسيط.

افترض أنك ترغب في إنشاء جدول لتخزين أسماء السيارات المستعملة التي تفكر في شرائها وسنوات إنتاجها إضافةً إلى أسعارها. وترغب في السماح بعدد ثلاثين حرفاً للاسم وأربعة أحرف لسنة الإنتاج كحد أقصى. لإنشاء الجدول باستخدام استعلام تعريف البيانات، اتبع ما يلي:

ملاحظة: يجب اولا تمكين محتويات قاعده البيانات ب# الترتيب ل# استعلام تعريف بيانات تشغيل.

  1. علي شريط الرسائل، انقر فوق خيارات، و# من ثم انقر فوق تمكين هذا المحتوي.

  2. من علامة التبويب إدراج، في المجموعة غير ذلك، انقر فوق استعلام.

  3. أغلق مربع الحوار إظهار جدول.

  4. من علامة التبويب تصميم، في المجموعة نوع الاستعلام، انقر فوق تعريف بيانات.

    تم إخفاء شبكة التصميم، ويتم عرض علامة التبويب الخاصة بكائن طريقة عرض SQL.

  5. اكتب جملة SQL التالية:

    CREATE TABLE Cars (Name TEXT(30), Year TEXT(4), Price CURRENCY)‎

  6. ضمن علامة التبويب تصميم، في المجموعة أدوات، انقر فوق تشغيل.

تعديل جدول

لتعديل جدول، يمكنك استخدام الأمر ALTER TABLE. يمكنك استخدام الأمر ALTER TABLE لإضافة أعمدة أو قيود أو تعديلها أو إسقاطها (إزالتها). ويكون بناء جملة الأمر ALTER TABLE كما يلي:

ALTER TABLE table_name predicate

حيث داله التقييم يمكن ان يكون اي مما يلي:

ADD COLUMN field type[(size)] [NOT NULL] [CONSTRAINT constraint]

ADD CONSTRAINT multifield_constraint

ALTER COLUMN field type[(size)]

DROP COLUMN field

DROP CONSTRAINT constraint

افترض أنك ترغب في إضافة حقل نص مكون من عشرة أحرف لتخزين معلومات حول حالة كل سيارة. يمكنك القيام بما يلي:

  1. من علامة التبويب إدراج، في المجموعة غير ذلك، انقر فوق استعلام.

  2. أغلق مربع الحوار إظهار جدول.

  3. من علامة التبويب تصميم، في المجموعة نوع الاستعلام، انقر فوق تعريف بيانات.

    تم إخفاء شبكة التصميم، ويتم عرض علامة التبويب الخاصة بكائن طريقة عرض SQL.

  4. اكتب جملة SQL التالية:

    ALTER TABLE Cars ADD COLUMN Condition TEXT(10)‎

  5. ضمن علامة التبويب تصميم، في المجموعة أدوات، انقر فوق تشغيل.

أعلى الصفحة

إنشاء فهرس

لإنشاء فهرس على جدول موجود، استخدم الأمر CREATE INDEX. ويكون بناء جملة الأمر CREATE INDEX كالتالي:

CREATE [UNIQUE] INDEX index_name
ON table (field1 [DESC][, field2 [DESC], ...])
[WITH {PRIMARY | DISALLOW NULL | IGNORE NULL}]

تكون العناصر الوحيدة المطلوبة هي الأمر CREATE INDEX واسم الفهرس والوسيطة ON واسم الجدول الذي يحتوي على الحقول التي ترغب في فهرستها إضافةً إلى قائمة بالحقول التي يجب تضمينها في الفهرس.

  • تعمل الوسيطة DESC على إنشاء الفهرس بالترتيب التنازلي، الأمر الذي قد يكون مفيداً إذا كنت تقوم بشكلٍ متكررٍ بتشغيل الاستعلامات التي تبحث عن القيم العليا للحقل المُفهرس أو التي تقوم بفرز الحقل المفهرس بالترتيب التنازلي. بشكل افتراضي، يتم إنشاء الفهرس بالترتيب التصاعدي.

  • ينشئ الوسيطه "مع الاساسي" الحقل او الحقول المفهرسه ك مفتاح أساسي في الجدول.

  • تتسبب الوسيطة WITH DISALLOW NULL في أن يتطلب الفهرس إدخال قيمة للحقل المفهرس — وهو ما يعني أن القيم الخالية غير مسموح بها.

افترض أن لديك جدولاً باسم Cars (سيارات) يحتوي على حقول تقوم بتخزين أسماء السيارات المستعملة التي تفكر في شرائها وسنوات إنتاجها وأسعارها وحالاتها. افترض أيضاً أن الجدول قد أصبح كبيراً وأنك تقوم بشكلٍ متكررٍ بتضمين حقل السنة في الاستعلامات. يمكنك إنشاء فهرس على حقل "السنة" لمساعدة الاستعلامات على إرجاع نتائج بسرعة أكبر عن طريق استخدام الإجراء التالي:

  1. من علامة التبويب إدراج، في المجموعة غير ذلك، انقر فوق استعلام.

  2. أغلق مربع الحوار إظهار جدول.

  3. من علامة التبويب تصميم، في المجموعة نوع الاستعلام، انقر فوق تعريف بيانات.

    تم إخفاء شبكة التصميم، ويتم عرض علامة التبويب الخاصة بكائن طريقة عرض SQL.

  4. اكتب جملة SQL التالية:

    CREATE INDEX YearIndex ON Cars (Year)‎

  5. ضمن علامة التبويب تصميم، في المجموعة أدوات، انقر فوق تشغيل.

أعلى الصفحة

إنشاء قيد أو علاقة

يعمل القيد على إنشاء حالة منطقية يجب أن يحققها الحقل أو مجموعة من الحقول عندما يتم إدراج القيم. على سبيل المثال، يعمل القيد UNIQUE على منع الحقل المقيد من قبول القيمة التي من شأنها تكرار قيمة حالية للحقل.

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

لإنشاء قيد، استخدم العبارة CONSTRAINT في الأمر CREATE TABLE أو الأمر ALTER TABLE. هناك نوعان من عبارات CONSTRAINT: واحدة لإنشاء قيد على حقل واحد، وأخرى لإنشاء قيد على حقول متعددة.

قيود الحقل الواحد

تلي عبارة CONSTRAINT للحقل الواحد تعريف الحقل الذي تقوم بتقييده مباشرةً، كما أن بناء الجملة الخاص بها يكون كما يلي:

CONSTRAINT constraint_name {PRIMARY KEY | UNIQUE | NOT NULL |
REFERENCES foreign_table [(foreign_field)]
[ON UPDATE {CASCADE | SET NULL}]
[ON DELETE {CASCADE | SET NULL}]}

افترض أن لديك جدولاً باسم Cars (سيارات) يحتوي على حقول تقوم بتخزين أسماء السيارات المستعملة التي تفكر في شرائها وسنوات إنتاجها وأسعارها وحالاتها. افترض أيضاً أنك تنسى بشكلٍ متكررٍ إدخال القيمة الخاصة بحالة السيارة، وأنك ترغب دائماً في تسجيل هذه المعلومات. يمكنك إنشاء قيد على حقل "الحالة"، لمنعك من ترك الحقل فارغاً، وذلك باستخدام الإجراء التالي:

  1. من علامة التبويب إدراج، في المجموعة غير ذلك، انقر فوق استعلام.

  2. أغلق مربع الحوار إظهار جدول.

  3. من علامة التبويب تصميم، في المجموعة نوع الاستعلام، انقر فوق تعريف بيانات.

    تم إخفاء شبكة التصميم، ويتم عرض علامة التبويب الخاصة بكائن طريقة عرض SQL.

  4. اكتب جملة SQL التالية:

    ALTER TABLE Cars ALTER COLUMN Condition TEXT CONSTRAINT ConditionRequired NOT NULL

  5. ضمن علامة التبويب تصميم، في المجموعة أدوات، انقر فوق تشغيل.

الان ل# نفترض ان، بعد فتره لاحظت وجود عده قيم مماثله في الحقل الشرط الذي يجب ان يكون نفسه. علي سبيل المثال، بعض السيارات تكون قيمه شرط ضعيفه و# الاخرين به علي قيمه غير صالحه. بعد تنظيف القيم ل# كي تكون يمكنهم المزيد من التناسق، يمكنك انشاء جدول، يسمي كاركونديتيون، يحتوي علي حقل واحد، المسمي شرط، الذي يحتوي علي كافه القيم التي تريد استخدامها ل# الشرط سيارات:

  1. من علامة التبويب إدراج، في المجموعة غير ذلك، انقر فوق استعلام.

  2. أغلق مربع الحوار إظهار جدول.

  3. من علامة التبويب تصميم، في المجموعة نوع الاستعلام، انقر فوق تعريف بيانات.

    تم إخفاء شبكة التصميم، ويتم عرض علامة التبويب الخاصة بكائن طريقة عرض SQL.

  4. اكتب جملة SQL التالية:

    CREATE TABLE CarCondition (Condition TEXT(10))‎

  5. ضمن علامة التبويب تصميم، في المجموعة أدوات، انقر فوق تشغيل.

  6. لإدراج القيم من حقل "الحالة" الخاص بالجدول Cars في الجدول CarCondition الجديد، اكتب جملة SQL التالية في علامة التبويب الخاصة بكائن طريقة عرض SQL:

    INSERT INTO CarCondition SELECT DISTINCT Condition FROM Cars;‎

    ملاحظة: جمله SQL في هذه الخطوه هي استعلام الإلحاق. ب# خلاف استعلام تعريف بيانات، ل# انهاء استعلام الحاق ب# فاصله منقوطه.

  7. ضمن علامة التبويب تصميم، في المجموعة أدوات، انقر فوق تشغيل.

للمطالبة بتطابق أية قيمة جديدة يتم إدراجها في حقل "الحالة" الخاص بالجدول Cars مع قيمة حقل "الحالة" الخاص بالجدول CarCondition، يمكنك عندئذٍ إنشاء علاقة بين CarCondition و Cars في الحقل المُسمى "الحالة"، وذلك باستخدام الإجراء التالي:

  1. من علامة التبويب إدراج، في المجموعة غير ذلك، انقر فوق استعلام.

  2. أغلق مربع الحوار إظهار جدول.

  3. من علامة التبويب تصميم، في المجموعة نوع الاستعلام، انقر فوق تعريف بيانات.

    تم إخفاء شبكة التصميم، ويتم عرض علامة التبويب الخاصة بكائن طريقة عرض SQL.

  4. اكتب جملة SQL التالية:

    ALTER TABLE Cars ALTER COLUMN Condition TEXT CONSTRAINT FKeyCondition REFERENCES CarCondition (Condition)‎

  5. ضمن علامة التبويب تصميم، في المجموعة أدوات، انقر فوق تشغيل.

قيود متعددة الحقول

يمكن استخدام فقط خارج عباره تعريف الحقل جمله CONSTRAINT متعدد حقول، و# علي بناء الجمله التالي:

CONSTRAINT constraint_name 
{PRIMARY KEY (pk_field1[, pk_field2[, ...]]) |
UNIQUE (unique1[, unique2[, ...]]) |
NOT NULL (notnull1[, notnull2[, ...]]) |
FOREIGN KEY [NO INDEX] (ref_field1[, ref_field2[, ...]])
REFERENCES foreign_table
[(fk_field1[, fk_field2[, ...]])] |
[ON UPDATE {CASCADE | SET NULL}]
[ON DELETE {CASCADE | SET NULL}]}

ساعدنا القاء نظره علي مثال اخر استخدام الجدول سيارات. ل# نفترض انك تريد التاكد من ان لا سجلين في الجدول سيارات لديهم نفس المجموعه من القيم ل# الاسم و# السنه، و# الشرط و# الاسعار. يمكنك انشاء قيد فريد التي تنطبق علي هذه الحقول ب# استخدام الاجراء التالي:

  1. من علامة التبويب إدراج، في المجموعة غير ذلك، انقر فوق استعلام.

  2. أغلق مربع الحوار إظهار جدول.

  3. من علامة التبويب تصميم، في المجموعة نوع الاستعلام، انقر فوق تعريف بيانات.

    تم إخفاء شبكة التصميم، ويتم عرض علامة التبويب الخاصة بكائن طريقة عرض SQL.

  4. اكتب جملة SQL التالية:

    ALTER TABLE Cars ADD CONSTRAINT NoDupes UNIQUE (name, year, condition, price)‎

  5. ضمن علامة التبويب تصميم، في المجموعة أدوات، انقر فوق تشغيل.

أعلى الصفحة

ملاحظة: إقرار إخلاء المسؤولية للترجمة الآلية: تمت ترجمة هذه المقالة بواسطة نظام كمبيوتر دون تدخل العامل البشري. توفر Microsoft هذه الترجمات الآلية لمساعدة المستخدمين الذين لا يتحدثون الإنجليزية على استخدام منتجات Microsoft، وخدماتها، وتقنياتها والاستمتاع بها. قد تحتوي هذه المقالة على أخطاء في المفردات، أو بناء الجملة، أو القواعد نظرًا لترجمتها آليًا.

توسيع المهارات
استكشاف التدريب
الحصول على الميزات الجديدة أولاً
الانضمام إلى Office Insider

هل كانت المعلومات مفيدة؟

نشكرك على ملاحظاتك!

شكراً لك على الملاحظات! يبدو أنه من المفيد إيصالك بأحد وكلاء دعم Office لدينا.

×