delphi4arab منتديات دلفي للعرب

نسخة كاملة : مشكل في العلاقات بين جدولين بقاعدة بيانات اكسس
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
أعمل على برنامج يقوم بتسجيل البنايات والشقق
قمت بربط جدول البنايات مع جدول الشقق بعلاقة one to Many
المشكلة عند إدخال الشقة رقم 1 في البناية الأولى والشقة رقم 1 في البناية التانية يظهر خطأ بأن ال primary key لا يمكن تكراره
حيث تسجيل الشقة رقم واحد في البناية الأولى والشقة رقم واحد في البناية التانية بدون تكرار مثلا الشقة رقم واحد في البناية رقم واحد أكثر من مرة ,,

مع العلم إنني أستخدم قاعدة بيانات أكسس ودلفي 7

ولكم السلام

وعليكم السلام ورحمة الله

في الجدول اجعل كل من الحقلين رقم الشقة و رقم البناية Primary Key
إذا إفترضنا إننا عملنا رقم الشقة primary key فأسجل الشقة رقم واحد في البناية الأولي فإذا جاءت لعمل الشقة رقم واحد في البناية الثانية فإن رسالة التكرار في المفتاح الأساسي سوف تظهر
اخي العزيز إذا كانت المشكلة ظهور رسالة خطاء في حال تكرار بيانات الحقل وانت بالاصل تريد تكرارها حسب فهمي
عليك اتباع التالي:
في برنامج الاكسس حقل رقم الشقة عليك ان تجعل Indexed = No
- وإذا لم تحل افضل ان تحلها برمجيا من خلال دلفي.
تحيااااتي

ربما لم تفهم، حسنا
ماذا يحتوي جدول الشقق (الحقول) ؟ وماذا يحتوي جدول البنايات ؟
شكراً جزيلاً لتفاعلكم معي

جدول البنايات هو الجدول الرئيسي حيث يحتوي على :

رقم البناية
أسم المالك
عنوان البناية

جدول الشقق وهو مربوط مع جدول البنايات بعلاقة one to many حيث أسجل أكثر من شقة في بناية واحدة ,,اعتقد حتى هنا هذا وضع طبيعي ,,وجدول الشقق يحتوي على
رقم الشقة
أسم المستأجر
التلفون
رقم البناية ((مفتاح أجنبي))

ولكم السلام
n_alhetar كتب :- وإذا لم تحل افضل ان تحلها برمجيا من خلال دلفي...
نعم هذا ما قصدت لكني قمت بتجربة لكن تنجح حيث قمت بعمل نو إنديكس للمفتاح الجانبي ,,
فكيف فحلها برمجياً
aymanabdo كتب :قمت بتجربة لكن تنجح

ياليت اخي ترسل بالملف وصيغة الرسالة الخطاء ومتى ظهورها
لكي اتمكن من تعديلها وارسالها مرة اخرى..!
أخي في البدأ شكراً جزيلاً على الإهتمام
لقد قمت بإرفاق الملف
اخي العزيز الصورة بعد تعديل العلاقات وكتابة بعض الامثلة
إذا كان هذا ما تقصدة فعليك فقط حذف المفتاح الاساسي لرقم الشقة.
[صورة: attachment.php?attachmentid=2456&d=1299590668]
اما بخصوص عدم تكرار رقم الشقة لنفس المبنى عليك حلها برمجيا.
وإذا اردت الكود سوف ارسلها لك.
الصفحات : 1 2