• 0
arafa2003

كيف يمكن انشاء علاقة بين جدولين ولكن عن طريق الكود

سؤال

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

في المثال يوجد جدولين متصلين بجدولين اخرين بعلاقة واحد الى متعدد

والسؤال هو

هل يمكن من النموذج الرئيسى ان احذف اى علاقة عن طريق زر واستعيدها مرة اخرى عن طريق زر آخر

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

اى حذف واستعادة العلاقات ولكن برمجيا

شكرا لكم

Relationship.rar

تم تعديل بواسطه MOHAMED ARAFA
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

12 إجابة على هذا السؤال .

  • 0

اذن انت تفضلين عدم تفعيل هذه الخاصية؟؟؟

 

عند استعمال الطريقة الاخرى وهى تفعيل زر  اظهار مخطط العلاقات لكى افعل الخاصية يدويا بدلا من برمجيا لم تعمل معى

علما باننى اخفيت اطارات الاكسس وسوف يتم تحويل المشروع الى mde

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

شكرا لكى اخت زهرة على سعة صدرك وجزاكى الله كل خير

 

 

جزاك الله كل خير اخي الفاضل : عمر

 

 

حسنا اخي الكريم : محمد عرفه

طالما انك لا تريد استخدام الطريقة السابقة فإليك الطريقة الجديده لأنشاء العلاقات واختيار ( تتالي تحديث الحقول المرتبطة و تتالي حذف السجلات المرتبطة ) وحذفها بواسطة الكود البرمجي بدون ان تقوم بتفعيل خاصية  ANSI-92  في الأكسيس

 

جرب البرنامج الآن فهو يعمل بشكل ممتاز جدا

 

اذا تمت الإجابه على السؤال فلا تنسى الضغط على ( أفضل إجابة )

za-Relationships-END2.rar

 

بالتوفيق

تم تعديل بواسطه zahrah
1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم

هذا رابط لهدية من هدايا الاستاذة ام عهود حفظها الله

 

من هنا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

شكرا جزيلا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بارك الله بك اخي الكريم : عبدالله

 

 

اخي الفاضل : محمد عرفه

 

اليك التطبيق الفعلي الكامل على انشاء وحذف واستعادة العلاقات بين الجداول

 

 فقط اضغط وتمتع   :rolleyes:

 

post-15367-0-63885100-1361169135_thumb.g

 

 

اذا تمت الإجابه على السؤال فلا تنسى الضغط على ( أفضل إجابة )

za-Relationship-UP.rar

اذا تمت الإجابه على السؤال فلا تنسى الضغط على ( أفضل إجابة )

 

 

 

بالتوفيق

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

ما شاء الله عمل مميز وابداع كبير من استاذة متميزة بشكل دائم  

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

كما في الصورة

Untitled-1-1_zps6865d05a.jpg

 

بارك الله فيكى

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

تفضل اخي الكريم

تم تعديل الأكواد البرمجية بناء على طلبك وتعمل كما طلبت انت بإضافة  ( ON UPDATE CASCADE   |  ON DELETE CASCADE )

 

 

 

اذا تمت الإجابه على السؤال فلا تنسى الضغط على أفضل إجابة )

za-Relationship-LAST.rar

اذا تمت الإجابه على السؤال فلا تنسى الضغط على أفضل إجابة )

 

 

 

بالتوفيق

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بارك الله فيكى اخت زهرة وجعله في ميزان حسناتك ان شاء الله

ولكن يا اختى العزيزه حدث شىء معى اثناء التنفيذ

 

عند وضع انشاء العلاقات وعند الضغط على الزر ظهرت رسالة الخطأ هذه

Run-Time error '3289':o

syntax error in CONSTRAINT clause.

 

وعند البحث لمعرفة سبب هذا الخطأ وجدت ان احد الحلول هو تفعيل هذه الخاصية

 

 

Untitled-1-1_zps6bca0390.jpg

 

 

وعندما حاولت تفعيلها ظهرت لى هذه الرسالة

 

Untitled-2_zps51d647bc.jpg

 

 

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

وعلى سبيل التجربه عند تخطى الرسالة بالموافقة تم عمل خاصية انشاء العلاقات بشكل ممتاز

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

وهل عند تفعيل هذه الخاصية سوف يتم التفعيل في المشروع نفسه عند وضعه في اى جهاز آخر ام سوف يحدث مشكلة في الاجهزه الاخرى 

شكرا جزيلا لكى

تم تعديل بواسطه MOHAMED ARAFA
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخي الفاضل : محمد عرفه

 

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

 

خاصيتي : ( ON UPDATE CASCADE   |  ON DELETE CASCADE ) غير مدعومه في قاعدة البيانات اكسيس من خلال الكود البرمجي لأنه يجب ان وضعها يدويا من خلال الواجهه لأن قاعدة البيانات اكسيس تعمل بالمواصفة ANSI-89 في بناء جملة Jet SQL التقليدي و هذا الوضع يتوافق كثيراً مع مواصفات ANSI-89 المستوى الأول .

 

لذا نجد انه عند استخدام تتالي التحديث وتتالي الحذف برمجيا تظهر لنا رسالة خطأ لعدم مقدرة قاعدة البيانات اكسيس على فهم هذا الأسلوب والتي يتطلب منا ان ننتقل الى مستوى اعلى وهو مستوى المواصفة ANSI-92 والتي تعمل مع SQL Server  حيث تختلف هذه المواصفة عن المواصفة السابقة .

 

لماذا استخدام ANSI-92 SQL؟
قد تحتاج إلى استخدام ANSI-92 SQL للأسباب التالية:
تتوقع زيادة حجم التطبيق في المستقبل لمشروع Access وترغب في إنشاء استعلامات سيتم تشغيلها بأقل التغييرات في قاعدة بيانات Microsoft SQL Server. 
ترغب في الاستفادة من الميزات الجديدة غير الموجودة في ANSI-89 SQL، مثل: 
تغيير إعدادات الأمان بواسطة استخدام عبارتيGRANT و REVOKE SQL 
استخدام DISTINCT في مرجع دالة تجميع، على سبيل المثال SUM(DISTINCT Price). ينطبق ذلك فقط على مشروعات Access (.adp). ولا ينطبق على ملفات قاعدة بيانات Access (.mdb). باستخدام جملة LIMIT TO nn ROWS للحد من عدد الصفوف التي يتم إرجاعها من قبل الاستعلام 
 
لماذا يجب تجنب خلط الاستعلامات التي يتم إنشاؤها تحت وضعي استعلام ANSI SQL
وضعا استعلام ANSI SQL، ANSI-89 و ANSI-92 غير متطابقين. عند إنشاء قاعدة بيانات Microsoft Access، تحتاج تقرير وضع الاستعلام الذي ستقوم باستخدامه، حيث أن خلط الاستعلامات التي تم إنشاؤها بوضعي الاستعلام قد ينتج عنه حدوث أخطاء أثناء التشغيل أو الحصول على نتائج غير متوقعة. يختلف نطاق أنواع البيانات، الكلمات المحجوزة، وأحرف البدل في أي من أوضاع الاستعلام.
 
مثال لاستعلام يستخدم أحرف البدل.
يمكن أن ينشئ الاستعلام الذي يستخدم أحرف بدل في تعبير بمعايير نتائج مختلفة باستخدام كل وضع استعلام مختلف. على سبيل المثال، إذا قمت بتشغيل:
استعلام ANSI-89 SQL في قاعدة بيانات معينة إلى وضع استعلام ANSI-92 مثل: 
SELECT * FROM Customers WHERE Country Like 'U*'
تم تعديل بواسطه zahrah
1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اذن انت تفضلين عدم تفعيل هذه الخاصية؟؟؟

 

عند استعمال الطريقة الاخرى وهى تفعيل زر  اظهار مخطط العلاقات لكى افعل الخاصية يدويا بدلا من برمجيا لم تعمل معى

علما باننى اخفيت اطارات الاكسس وسوف يتم تحويل المشروع الى mde

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

شكرا لكى اخت زهرة على سعة صدرك وجزاكى الله كل خير

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بارك الله فيك أستاذتنا الكريمة زهرة .. زادك الله علماً

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بارك الله فيكى اخت زهرة وهذا هو عهدنا بكى دائما وتم العمل الآن بنجاح باهر

شكرا جزيلا لكى

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
زوار
This topic is now closed to further replies.

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .