إنشاء علاقات بين الجداول في sqlite
#1
السلام عليكم ورحمة الله
ما هي طريقة إنشاء علاقات بين الجداول في قواعد بيانات sqlite
و ما هي الطريقة المتبعة لحذف و تعديل السجلات المرتبطة بالتتابع
الرد
#2
السلام عليكم
ماهو البرنامج الذي تستخدمه فالامر يعتمد على هذا
يمكنك استخدام احد البرامج ومنها مستكشف الاسكيوال سيرفر نفسه اذا اضفت مجال الاسماء التالي :
System.data.sqllite
<SQLite.NET>
وانت لا مشكلة لديك معه على ما اذكر وتجده بالموقع التالي :
كود :
http://www.sqlite.org/
وقد جربته وربطت الجداول مع بعضها وتم حذف كل السجلات المترابطة بحال حذف السجل الاب
ويمكنك استخدام برنامج SqlLite ADmin وتجده بهذا المكان
كود :
http://sqliteadmin.orbmu2k.de/
ولله الموفق
بين الانسان والكفر ترك الصلاة فمن تركها فقد كفر .
الرد
#3
نعم لأستاذي و لكني أستخدم sqlite maestro وعند حذف السجل الأب لايتم حذف باقي السجلات و إن كان استخدام رقم id التلقائي لايتكرر ولكن أخشى تراكم البيانات بدون داعي
و لكن جزاكم الله خيراً
الرد
#4
السلام عليكم
ليس عندي هذا البرنامج ولم اجربه وان كنت اتكهن بطريقته
فانا اعتقد ليس هناك طريقة لربط الجداول من داخل البرنامج أي انشاء Relation كما بالاكسس او الاسكيو ال سيرفر
بحيث اذا حذف الجدول الاب يتم حذف الابناء .
ولكن يمكنك بالتاكيد انشاء الفهارس الفريدة لكل جدول كما ببرنامج SQLLite ADMIN
تم ومن داخل الدلفي وعن طريق الجداول الداتا سيت والداتا سورس يمكنك ربط هذه الفهارس ببعضها
ودع الدلفي يتكفل بالموضوع عنك وسيتم حذف الابناء تلقائياً
جربت هذا مع المكون SQLLite3 وبالتاكيد نفس الشئ مع ZEOS وباقي المكونات
الربط يتم من داخل الدلفي ولكن بعد تعريف الفهارس بقاعدة البيانات
بين الانسان والكفر ترك الصلاة فمن تركها فقد كفر .
الرد
#5
و الله يا أستاذي أنا أقوم ببناء البرنامج بلازاراس و zeos لا يقوم بحذف سجلات الجدول الابن( حطم إمالي) و بالتالي ما باليد حيلة غير استخدام المكونات القياسية في لازاراس و عمل كل ذلك يدوياً Sad
الرد
#6
السلام عليكم

ZEOS لم اجربه ولا اعرف ان كان يستطيع ذلك
واعتقد بالعربية هذه المكونات أسمها ( زيوس ) أي رب الارباب لليونانيين قديما والعياذ بالله
اتركه مالك وله هناك الكثير غيره
على العموم مشكلتك بسيطة وحلها في جملة SQL واحد عند حذف جدول الاب وفي الحدث AFTER DELETE استخدم جملة شبيهة بالتالي
Delete * from TableAbn where Index=1
حيث TableAbn هو الجدول الابن وINDEX هو الحقل الذي تحفظ فيه رقم ID للجدول الاب .
واحذر ان تترك الحقل INDEX بلا رقم فيصبح لديك ابناء مشردين لا اب لهم ولا من طريقة لايجادهم
بين الانسان والكفر ترك الصلاة فمن تركها فقد كفر .
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم