الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف يمكنني ربط ثلاث جداول مع بعض

بدأه medreg في 31 يوليو 2010 · 2 رد · 2,000 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

لدي مشكلة في ربط 3 جداول مع بعض علما انني استعمل قاعدة البيانات Absolute Database و نسخة الدلفي7

لدي الجدول الأول pers.db والحقل المفتاح هو PS_CD من نوع SMALLINT واسم الجدول AbsTable1

والجدول الثاني Poste.Db والحقل المفتاح هو PT_CD من نوع string واسم الجدول AbsTable2

والجدول الثالث Rubrique.db والحقل المفتاح هو RB_CD من نوع string واسم الجدول AbsTable3

المطلوب هو ربط abstable2 بـ Abstable3

بمعنى احتاج لمعطيات Abstable3 في كل سجلات AbdTable2 تلقائيا ومن خلال الضغط على زر بحيث استطيع ان اغير المعطيات من دون ان يؤثر عليها في الجدول AbsTable3

وربط abstable1 بـ AbsTable2

بمعنى احتاج الى معطيات ABstable2 في كل سجلات AbsTable1 بما فيها المعطيات التي وردت له من AbsTable3 حسب التغييرات التي طرأت عليها في AbsTable2

إذا كيف لي ان اعمل هذا وجزاكم الله عنا كل خير

#2

اعتقد انه يمكنك فعل ذلك باستعمال الـــ SQL وخاصة الــ inner join, مثال:

select user_name,user_adrs from users_table inner join credit_table where users_table.id=credit_table.id order by user_name

بهذه الطريق يمكنك ربط ما تشاء، ولمعرفة عدد الأسطر يمكنك استعمال الــ count.

#3

السلام عليكم

أنا لدي جدولين في قاعدة البيانات بينهما علاقة one-to-many وكنت أحاول بلا جدوى الربط بينهما فكان يصادفني مشاكل دوما

جربت اليوم طريقة INNER JOIN ON جربت البرنامج وتم تنفيذه بلا أخطاء وتوقعت أنها نجحت معي وأخيرا

إلا أن هناك مشكلة جديدة صادفتني وهي أنني عندما أستخدم أحد التابعين Insert أو Delete مع ال ADOQuery فإن التابع يحذف السجل أو ينشئه في الجدولين المربوطين وليس في أحدهما

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

والعكس فإذا أردت أن أضيف مادة من صنف موجود أصلا قام التابع بتكرار هذا الصنف في جدول الأصناف

فماهي المشكلة برأيكم

مواضيع مشابهة