منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

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

بمعنى أنك تنشيء إجراء procedure خاص بالاتصال، هذا أولاً.

ثم تقوم بعملياتك، وتفصل الاتصال بعد الانتهاء منها. وتستدعي إجراء الاتصال في كل مرة تريد التواصل مع قواعد البيانات.

يعني أنت تصنع الوضع المتصل والوضع المنفصل.

أضف إلى ذلك... قواعد بيانات سيكويلايت أصلاً تستخدم من قبل برنامج واحد، فهي قاعدة بيانات مضمنة وليست متاحة للمشاع.
يجب أن يكون هناك Connection واحد فقط متصل بها، وكذلك الـTransaction واحد فقط.

لو لاحظت في دورة برمجة قواعد بيانات MariaDb مع Lazarus، حتلاحظ أنها تعمل من خلال سيرفر، والسيرفر يخدم عدة مستخدمين في نفس الوقت. وحتلاحظ أننا نستخدم Transaction في كل عملية.

أما في SQLite فهناك Connection واحد وTransaction واحد.

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

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

لو كان برنامجك يخص شخصاً واحداً على كمبيوتر واحد، من الممكن استعمال أكسس أو سيكويلايت.

اما إن كان يخدم مستخدمين فأكثر.. فالأفضل استعمال قواعد بيانات تعمل على سيرفرات.
ِشكرا لك أخي أبو بكر على زيادة التوضيح .
تعوّد دائماً على برمجة قواعد البيانات التي تعمل على سيرفر. حتى لو كنت مبتدئاً. بعد ذلك يمكنك أن تعرّج على قواعد بيانات سيكويلايت أو أكسس فلا بأس.

في المجال العملي.. ستلاحظ أن الناس يفضلون قواعد البيانات التي تعمل على سيرفر، مثل SQL Server وMySql وMariaDBو Oracle وغيرها.
شكرا على النصيحة القيمة