الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة في الإتصال بقاعدة بيانات Access 2007 بواسطة ADO

مغلق
بدأه مصلح الحريصي في 14 يناير 2007 · 6 رد · 5,569 مشاهدة · في قسم أرشيف الأكسيس 2007
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

مع الأكسيس قبل 2007 كنا نستخدم الإتصال بقاعدة خارجية أي خارج التطبيق بالشكل التالي :

	Dim cnn As New ADODB.Connection
	Dim rst As New ADODB.Recordset
	cnn.Provider = "Microsoft.JET.OLEDB.4.0;"
	cnn.Open CurrentProject.Path & "\CustTbl.mdb", "Admin"

ثم نستكمل بقية الكود

في أكسيس 2007 حاولت الإتصال بواسطة الكود السابق فلم أفلح طبعاً غيرت إمتداد قاعدة البيانات من CustTbl.mdb إلى CustTbl.accdb ولكن دون جدوى حيث تظهر رسالة نصها " تنسيق قاعدة البيانات C:\Example\CustTbl.mdb لا يمكن التعرف عليه " غيرت الإمتداد في الكود إلى mdb ولكن نفس المشكلة.

ما أدري فهل يمكن أن يكون الخطأ في ( OLEDB.4.0 ) أقصد تغير

فهل أحد جرب ذلك أو لديه الحل ؟

تم تعديل هذه المشاركة بواسطة مصلح الحريصي في 14 يناير 2007 في 00:58

#2

اخي ابو ساره

السلام عليكم ورحمة الله وبركاته

تأكد من المراجع والمكتبات في الـ References

وجرب هذا الكود

Dim cnn As New ADODB.Connection
	Dim cat As New ADOX.Catalog
	cnn.Open "Provider='Microsoft.Jet.OLEDB.4.0';" & _
		"Data Source= 'CustTbl.mdb';"
	Set cat.ActiveConnection = cnn
#3

أختي زهرة

وعليكم السلام ورحمة الله وبركاته

لدي قاعدتي بيانات أحدهما واجهة التطبيق والأخرى التي أحاول الإتصال بها تحتوي على الجداول.

لقد قمت بضبط المكتابة اللازمة للكائن ADO المعتادة وهي

Microsoft ActiveX Data Objects 2.8 Library
Microsoft ADO Ext.2.8 for DDL and security
Microsoft Jet and Replication Objects 2.6 Library

ولكن دون جدوى لا أعرف ما هو السبب الخطأ يركز على أنه لا يمكن التعرف على تنسيق قاعدة البيانات.

طبعاً جربت الكود الذي تفضلتي به مشكورة ولكن لا زالت المشكلة قائمة لا أعلم ما هو السبب وأكثر ما شدني للموضوع الفضول أريد أعرف ما هذا الجديد المستخبي لنا وراء Access 2007 وهذه البداية والله يستر من العواقب.

تم تعديل هذه المشاركة بواسطة مصلح الحريصي في 15 يناير 2007 في 03:12

#4

اخي ابو ساره

كما تعلم انني اعمل الان على اكسيس 2003 وما بعد حطيت اكسيس 2007 في دماغي لأني لو تفرغت له رايحه اطلع اسرار اللي خلفوه ولكني لست مستعجله الوقت الراهن ولم يحن الوقت له .

وطالما ان البرنامج لديك فحاول تبحث في المساعدة عن الاتصال ADODB.Connection فقد تجد اجابه لا نعلمها او قد يكون هناك اعدادات يجب عليك عملها في البرنامج قبل عملية الاتصال واعرف انه برنامج غثيث رغم تطويره فالله يعينك على الغثاء

#5
اقتباس
وما بعد حطيت اكسيس 2007 في دماغي لأني لو تفرغت له رايحه اطلع اسرار اللي خلفوه

أنا عارف ذلك وغريبه أنك باقي للآن مفروض أنت في الطليعة .

بالنسبة للبحث فقد بحثت حتى في موقع مايكروسوفت نفسها ولكن لم أجد ما يفيد ( طبعاً حسب بحثي أنا (h) ) كذلك في التعليمات الخاصة بالأكسيس الغريب في الأمر إنني لم أجد إلا الطريقة المعتادة ولم يطرأ تغيير على الكود.

تم تعديل هذه المشاركة بواسطة مصلح الحريصي في 15 يناير 2007 في 04:33

#6

شكراً للأخت زهرة على المرور والمشاركة

فبعد عدة محاولات وعن طريق معالج الإتصال بقواعد البيانات في أكسيس ----- > موفر الخدمة أكتشفت الحل يبدوا أن مايكروسوفت غيرت محرك قواعد البيانات في إصدار أكسيس الجديد من Jet 4.0 إلى ACE.OLEDB.12.0

في السابق مع Access 2003 وما سبقه كنا نستخدم السطر التالي :

 cnn.Open "Provider='Microsoft.Jet.OLEDB.4.0';"

وفي Access 2007 أصبح كالتالي :

 cnn.Provider = "Microsoft.ACE.OLEDB.12.0;"

أكرر شكري للأخت زهرة على المشاركة

تم تعديل هذه المشاركة بواسطة مصلح الحريصي في 15 يناير 2007 في 22:52

#7

اخى طب لو عاوز اعمل كلمة سر ,كيف فى الاكسس و الconnection string

I'm New i want to be Old with much more Experience

هذا الموضوع مغلق.

مواضيع مشابهة