![]() |
|
[عنوان معدل]ما سبب هذه المشكلة oledbexception was unhandled - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم قواعد البيانات (http://vb4arb.com/vb/forumdisplay.php?fid=40) +--- قسم : قسم أسئلة قواعد البيانات تحت بيئة الـ.NET (http://vb4arb.com/vb/forumdisplay.php?fid=41) +--- الموضوع : [عنوان معدل]ما سبب هذه المشكلة oledbexception was unhandled (/showthread.php?tid=10012) |
[عنوان معدل]ما سبب هذه المشكلة oledbexception was unhandled - eng.khalidvb - 11-08-13 السلام عليكم ورحكمه الله وبركاتوا انا احاول ان اصمم قاعدة بيانات لسجل طلاب يتكون من رقم الطالب واسمه فقط وانا استخدم نسخة الفيجوال ستوديو 2012 ولكن واجهتني مشكله هي : oledbexception was unhandled وانه لا يمكن ايجاد الملف او مسار قاعدة البيانات لعرضها في DataGridView مع العلم اني استخدمه في الكود الموفر الخاص بمايكروسوفت : Provider=Microsoft.Jet.OLEDB.4.0 واستخدم قاعدة بيانات Access 2010 والمشكله تظهر في هذا الكود : conn.open اي ان المتغير المسؤؤل عن فتح قاعدة البيانات لا يمكنه ايجاد ملف الاكسس , مع العلم اني حاولت كثير في ايجاد حل ولكن الكود الذي قمت بكتابته اعتقد انه صحيح والمسار ايضا صحيح .. فهل هناك خطاء في الكود او في اصدار الموفر الذي كتبته ام ان السبب هو خطاء في المسار .. سوف ارفق الملف وارجو من لديه الخبره التعديل عليه وتوضيح الخطاء الذي ارتكبته مع جزيل الشكر .. اليكم صورة الخطاء التي تظهر : [ATTACH=CONFIG]3688[/ATTACH] والملف في المرفقات :: [عنوان معدل]ما سبب هذه المشكلة oledbexception was unhandled - eng.khalidvb - 11-08-13 المشكله كلها تكمن هنا في هذا الكود كود : Dim ConStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _هل هناك طريقة اخرى لكتابة المسار مع العلم ان هذا المسار الذي كتبته في البرنامج هو ان المسار يحدد بطبيعة ومكان تواجد الملف او قاعدة البيانات .. يعني انه لو نقلت الملف على جهاز اخر لن يتاثر المسار والبرنامج سوف يعمل بشكل طبيعي بدون اخطاء ارجوووكم افيدوني ....
[عنوان معدل]ما سبب هذه المشكلة oledbexception was unhandled - Sajad - 11-08-13 السلام عليكم بدل 4 الى 12 لان 4 لأكسس 2003 و12 لبقية الاصدارات تنبيه: يرجى كتابة عنوان واضح يدل على المحتوى وكتابة الموضوع في قسمها الصحيح [عنوان معدل]ما سبب هذه المشكلة oledbexception was unhandled - eng.khalidvb - 12-08-13 تم حل المشكله بعد البحث والاستطلاع في موقع مايكروسوفت للدعم تحت بيئة الدوت نت المشكله كانت هي في تحديد اصدار الموفر واي قاعدة بيانات يتم دعمها من خلال الموفر الذي توفره مايكروسوفت لقواعد البيانات نلاحظ انني ف المثال السابق استخدمة الموفر الاصدار الرابع Provider=Microsoft.Jet.OLEDB.4.0 واستخدمة قاعدة بيانات Access 2010 لذلك حدث مع خطاء اونه لا يمكن ايجاد مسار قاعدت البيانات وهو ف الحقيه ان الموفر الذي هو من الاصدار الرابع لا يدعم الاكسس 2010 . اذا كيف تم حل هذه المشكله .. تابع معي اخي الكريم :: هناك عدة موفرات قدمتها مايكروسوفت تحت بيئة الدوت نت التي من خلالها يمكن الاتصال بقاعدة البيانات Provider=Microsoft.Jet.OLEDB.3.0 Provider=Microsoft.Jet.OLEDB.3.5 Provider=Microsoft.Jet.OLEDB.4.0 هذه الاصدارات من الموفرات تدعم قواعد البيانات (97,2000,2003) والتي تنتهي بصيغة Databasename.mdb نلاحظ ان هذه الاصدارات صيغتها هي mdb وهذه المشكله التي واجهتني اي ان قاعدة البيانات التي قمت بالاتصال بها هي اكسس 2010 والتي تنتهي صيغتها بــ accdb حيث انها لا تدعم الموفر provider=Microsoft.Jet.OLEDB..4.0 تم حل المشكله التي واجهتها وكان مسار الاتصال بقاعدة البيانات كالتالي :: PHP كود : Dim ConStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _وذلك بعد ان قمت بتحويل قاعدة البيانات من 2010 الى 2003 ويمكن ايضا حلها بدون تحويل قاعدة البيانات والتي هي 2010 ويكون الكود كالتالي :: PHP كود : Dim ConStr As String = "Provider=Microsoft.Jet.OLEDB.12.0;" & _نلاحظ ان اصدار الموفر هو Provider=Microsoft.Jet.OLEDB.12.0 وان قاعدة البيانات Access 2010 هي student.accdb وهذا الموفر يدعم اصدارات الاكسس 2007 و 2010 اذا اصبت ف من الله واذا اخطأت ف مني والشيطان والحمد الله رب العالمين .. |