بسم الله الرحمن الرحيم
هل فكرت يوما بأن تكتب برنامج يتعامل مع اربع قواعد بيانات MsSQL,Access,MySQL,Oracel
بالنسبة الى الاخوة الذين عندهم خبرة في البرمجة و التعامل مع الزبائن أعتقد أنه قد واجهتهم هذه المشكلة في عملهم
و ذلك لعدة أسباب
1- الزبون : بشكل عام هو دائما الذي يختار اي قاعدة بيانات و ذلك لعدة اسباب منها على سبيل المثال لا الحصر : سعر الرخصة لقاعدة البيانات فهي تختلف من قاعدة الى أخرى
2- سرعة قاعدة البيانات في القراءة و الكتابة فهي تختلف فعلى سبيل المثال MySQL أسرع بالقراءة من Access
3- مدى ضخامة المشروع و كمية البيانات المتوقع تخزينها
4- مدى علم المبرمج نفسة في التعامل مع قاعدة البيانات من حيث انشاء الجدوال و الاستعلامات و ...
فلا يوجد وقت للبرمج في كل مرة لتعلم كيفية التعامل مع قاعدة بيانات معينية من أجل مشروع واحد و من ثم الانتقال الى مشروع أخر و قاعدة بيانات جديدة
و هناك الكثيرة من الاسباب التي و من خلال خبرتي القليلة أوجبت علي كمبرمج بأن أكتب برامج تتعامل مع أربع قواعد بيانات
لذلك كان لا بد من حل أو وسيلة توصلني الى هدفي
كان الخيار الاول و هو الخيار المعروف هو كالتالي:
كتابة برنامج أو موقع على أحدى اللغات البرمجية
و داخل الكود نتعامل مع أربع قواعد بيانات و ذلك حسب القاعدة المختارة
مثال:
switch(connection)
{
case "Access":
query Access;
break;
case "MsSQL":
query MsSQL;
break;
case "MySQL":
query MySQL;
break;
case "Oracel":
query Oracel;
break;
}
و لكن هذه طريقة مملة و تأخذ وقت كثير و تتطلب من المبرمج تعلم اربع قواعد بيانات
لذلك اذا الردت الحل و التخلص من هذه المشكلة فعليك بتعلم طريقة واحدة تغنيك عن كل هذا
و هي Nhibernate
فهي عبارة عن وسيط يتعامل بين برنامجك و بين كل قواعد البيانات فعيعطيك الخيار للانشاء اي قاعدة تريد
و انت من خلال كود البرنامج تكتب مع استعلام وحيد فقط
و النهيبرنت هو سوف يحول الى اي قاعدة بيانات تريد
و للافادة هذا هو موقعهم و هو مجاني
www.nhibernate.org