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

هل يمكن وضع اسم قاعدة البيانات(Access) في متغير

بدأه sandm في 24 ديسمبر 2010 · 3 رد · 973 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

اعمل على مشروع

واحاول ان اجعل في جملة الاتصال ان يكون اسم قاعدة البيانات في متغير او يؤخذ من التكست بوكس او ComboBox

اي مثل في جملة الاتصال التالية

 Public ConStr As String = "provider=microsoft.jet.oledb.4.0;" & _
"Data Source=" & Application.StartupPath & "\" & TBNameData.Text & ".mdb"

هل هذا صحيح

علما اني جربت ان اضعها وعمل اتصل ويظهر لي الخطئ التالي :

حدث خطأ أثناء إنشاء النموذج. انظر Exception.InnerException للاطلاع على التفاصيل. الخطأ هو: Object reference not set to an instance of an object.

الفائدة لوضع اسم قاعدة البيانات في متغير وليس جملة الاتصال كامله

هو للعمل على قاعدتين لسنتين اي 1431 و 1432

ودمت بخير وصحة وسلام

وجزاكم الله خير الجزء

تم تعديل هذه المشاركة بواسطة sandm في 24 ديسمبر 2010 في 14:57

#2

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

العبارة التي وضعتها خاطئة لأن البرنامج يبدأ بقرائتها قبل تعريف و تهيئة مربع النص أو أي أداة أخرى داخل النموذج .

لذلك الأفضل لك في حالتك هذه أن يقوم البرنامج بقراءة الملفات التي تنتهي بالامتداد mdb ويضعها داخل قائمة اختيار ( Combobox )

وبعد تحديد المستخدم للقاعدة التي يريد فتحها تقوم بإنشاء الاتصال .

#3

ممكن شرح طريقة عمل هذه الطريقة

اخي العزيز انا اضع اسماء قواعد البيانات في قاعدة مستقلة ويجود بهذه القاعد اسم كل ملف اي بمعنى ان

القاعدة Ta31

والقاعدة Ta32

طبعا ويوجد في مسار البرنامج او مجلد البرنامج

قاعدتين Ta31.mdb و Ta32.mdb

نفس التركيب ولكن قل قاعدة تخص سنه مستقلة

اي الـ 1431 و 1432

ابغى اخذ هذه الاسماء واضعها في متغير لاستخدامها في جملة الاتصال حسب القاعدة المطلوب العمل عليها او السنه

#4

تم التوصل إلى حل مؤقت

وربما دائما شكرا لهذا المنتدى مع اني لم اجد الحل فيه

لكن لا ننكر الجميل بل استفدفت منه في اشياء قليلة ونطمح للكثير

على انامل اهل الخبرة والمعرفة جزاهم الله الف خير ووفقهم لما يحب ويرضى

للاستفاده توضع اسماء قواعد البيانات في قائمة كوم بكس Combobox

الإعلان عن متغير ليحمل فقط اسماء القواعد

Public Db_Name As String = Nothing

والإعلان عن متغير للاتصال

 Public ConStr As String = "provider=microsoft.jet.oledb.4.0;" & _
    "Data Source=" & Application.StartupPath & "\" & Db_Name & ".mdb"

Public Conn As New OleDbConnection(ConStr)

في فروم الـــ Module

وينصح دائما عمل جملة الاتصال فيه والله اعلم والسبب

التوفير وعدم تكرار اعلان اسم الفروم الذي يوجد فيه جملة الاتصال كل مره يتم فيه انشاء فروم جديد اي Class

استخدام

جملة with nameconnectionو end with

في الإجرائات التي يتطلب الاتصال بالقاعدة لتعبئة الــ DATASET

وغيرها

With Conn
            .ConnectionString = "provider=microsoft.jet.oledb.4.0;" & _
                                "Data Source=" & Application.StartupPath & "\" & Db_Name & ".mdb"
            .Open() ' فتح الاتصال
        End With

تم تعديل هذه المشاركة بواسطة sandm في 27 ديسمبر 2010 في 21:08

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…