تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] مشكلة في الاتصال بقاعدة بيانات اكسس 2003
#1
ارجو المساعدة في حل مشكلة تظهر لي عند الاتصال بقاعدة بيانات اكسس 2003 او حتى 2007 
وهذه هي الرسالة
Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine.
الرد
تم الشكر بواسطة:
#2
(17-01-20, 03:11 AM)ناجح احمد كتب : ارجو المساعدة في حل مشكلة تظهر لي عند الاتصال بقاعدة بيانات اكسس 2003 او حتى 2007 
وهذه هي الرسالة
Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine.

النسخة عندك 64 بت .

نزل مشغل قاعدة البيانات 2010 

https://www.microsoft.com/en-us/download...x?id=13255

واستخدم كود اتصال اكسيس 2007.
الرد
تم الشكر بواسطة: ناجح احمد , Amir_Alzubidy , Amir_Alzubidy
#3
(17-01-20, 03:17 AM)egypt 2020 كتب :
(17-01-20, 03:11 AM)ناجح احمد كتب : ارجو المساعدة في حل مشكلة تظهر لي عند الاتصال بقاعدة بيانات اكسس 2003 او حتى 2007 
وهذه هي الرسالة
Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine.

النسخة عندك 64 بت .

نزل مشغل قاعدة البيانات 2010 

https://www.microsoft.com/en-us/download...x?id=13255

واستخدم كود اتصال اكسيس 2007.
الف شكر لاهتمامك ... لكن المشكلة لم تحل !! هل من طريقة اخرى للحل ؟ وشكرا مره اخرى
الرد
تم الشكر بواسطة: Amir_Alzubidy , Amir_Alzubidy
#4
ماهي طريقة الاتصال لديك
الرد
تم الشكر بواسطة: ناجح احمد , Amir_Alzubidy , Amir_Alzubidy
#5
اشكرك جدا استاذي العزيز
هذا كود الاتصال
كود :
Public Sub dataconnection()
       If cnn.State = ConnectionState.Open Then ' اذا كان الاتصال مفتوح اغلقه
           cnn.Close()
       End If
       cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.12.0;Data Source=" & Application.StartupPath & "\data.accdb)"
       If Not cnn.State = ConnectionState.Open Then
           'افتح الاتصال
           cnn.Open()
       End If
   End Sub
End Module
الرد
تم الشكر بواسطة: egypt 2020 , Amir_Alzubidy , Amir_Alzubidy
#6
(17-01-20, 04:11 PM)ناجح احمد كتب : اشكرك جدا استاذي العزيز
هذا كود الاتصال
كود :
Public Sub dataconnection()
       If cnn.State = ConnectionState.Open Then ' اذا كان الاتصال مفتوح اغلقه
           cnn.Close()
       End If
       cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.12.0;Data Source=" & Application.StartupPath & "\data.accdb)"
       If Not cnn.State = ConnectionState.Open Then
           'افتح الاتصال
           cnn.Open()
       End If
   End Sub
End Module

نزل المشغل وريستارت للجهاز المشغل 32 بت 86

https://www.microsoft.com/en-us/download...x?id=13255
الرد
تم الشكر بواسطة: جميل4 , ناجح احمد , Amir_Alzubidy , Amir_Alzubidy
#7
جزيل الشكر والامتنان لحصرتك على متابعتك للموضوع
فعلت ذلك لكن المشكلة لا تزال ! اود ان ابين لحضرتك انه هذه المشكلة تحدث عندما يكون كود الاتصال بموديول فقط اما اذا كان كود الاتصال من داخل الفورم لا توجد مشكلة 
انا جديد على الدوت نت حاولت الانتقال من الفيجوال بيسك 6 التي اتقنها تماما ... ربما اعود اليها ثانية !!!!
الرد
تم الشكر بواسطة: Amir_Alzubidy
#8
قم بتغيير الخاصية Target CPU للمشروع إلى x86 مثل هذه الصورة
الرد
تم الشكر بواسطة: ناجح احمد , ناجح احمد
#9
اشكرك اخي العزيز جميل جزيل الشكر 
فعلت ذلك ولكن لم تحل المشكلة 
علما ان المشروع حملته من من هذا المنتدى ولم اغير فيه شيء ارجو المساعدة من حضراتكم . هذه بداياتي مع الدوت نت ولم اتخيل انها معقده بهذا الشكل علما ان كود الاتصال بالفيجوال بيسك 6 ما فيه مشكلة !!!!
الرد
تم الشكر بواسطة: جميل4
#10
تأكد من النص الذي في الاتصال، فهناك قوس زائد في نهايته
أيضا إذا كانت نوع ملف قاعدة البيانات accdb يكون Provider نوع ACE وليس Jet
فيكون النص الصحيح
PHP كود :
cnn.ConnectionString "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" Application.StartupPath "\data.accdb;" 
الرد
تم الشكر بواسطة: ناجح احمد , Amir_Alzubidy



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


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