السلام عليكم
إلى من يعرف هذه الاشياء:
اولا اريد كود ضغط قاعدة البيانات بأستخدام نمط ADO وقاعدة البيانات معمول لها كلمة سر
ثانيا أريد كود فتح هذه القاعدة المعمول لها كلمة سر
مع مثال بسيط لكل منهما
ارجو السرعة في الرد لو تكرمتوا
السلام عليكم
إلى من يعرف هذه الاشياء:
اولا اريد كود ضغط قاعدة البيانات بأستخدام نمط ADO وقاعدة البيانات معمول لها كلمة سر
ثانيا أريد كود فتح هذه القاعدة المعمول لها كلمة سر
مع مثال بسيط لكل منهما
ارجو السرعة في الرد لو تكرمتوا
تزودوا فأن خيرا الزاد التقوى
اللهم انصر اخواننا المسلمين المجاهدين في كل مكان
أخوني الاعزاء مالذي جرى لا أحد يرد علي اين المبرمجين الكبار
تزودوا فأن خيرا الزاد التقوى
اللهم انصر اخواننا المسلمين المجاهدين في كل مكان
السلام عليكم ورحمة الله وبركاته
قد يكون السبب في تأخر الرد أنك تشترط استخدام ال ADO لتنفيذ ضغط و إصلاح قاعدة البيانات
يمكن تنفيذ ذلك بسهوله عن طريق ال DAO
لكن عن طريق ال ADO ... الله أعلم
أسألكم الدعاء لأبي و أمي
السلام عليكم
هذه دالة لضغط قاعدة بيانات Access باستخدام كائنات ADO "حتى لو كان بها كلمة سر" , ولابد من إضافة المكتبة JRO لمراجع (References) البرنامج .
Private Function DBCompact(DBName As String) As Boolean
Dim JetRObject As New JRO.JetEngine
Dim PassCon As String
On Error GoTo CompErr
JetRObject.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;" _
& "Data Source=" & DBName & ";" & PassCon, _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Temp.mdb" _
& ";Jet OLEDB:Engine Type=4;" & PassCon
FileCopy "Temp.mdb", DBName
Kill "Temp.mdb"
DBCompact = True
Set JetRObject = Nothing
Exit Function
CompErr:
If Err.Number = -2147217843 Then
PassCon = InputBox("أدخل كلمة مرور قاعدة البيانات الحالية", _
"كلمة المرور مطلوبة")
PassCon = "Jet OLEDB:Database Password=" & PassCon & ";"
Resume
End If
MsgBox Err.Description & vbCrLf & "Source :" _
& Err.Source, vbOKOnly + vbCritical, Err.Number
DBCompact = False
Set JetRObject = Nothing
End Functionشكرا لك اخي الكريم على الاهتمام وان شاء الله اقوم بتجرتبها واخبرك وشكرا لك مجددا
تزودوا فأن خيرا الزاد التقوى
اللهم انصر اخواننا المسلمين المجاهدين في كل مكان
أخي الحبيب هل ممكن ان اطلب منك طلب آخر لو تكرمت:
كيف افتح قاعدة بيانات واعمل معها اتصال وبها كلمة سر بالادو وهذه القاعدة معمولة بالاكسس
تزودوا فأن خيرا الزاد التقوى
اللهم انصر اخواننا المسلمين المجاهدين في كل مكان
هذا كود لفتح قاعدة بيانات mydb.mdb مع كلمة سر mypassword
Dim Con As New ADODB.Connection db.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydb.mdb;Jet OLEDB:Database Password=mypassword;"
شكرا لك اخي الكريم والله اخجلتني بردودك على بهذه السرعة اللهم اجعلها في ميزان حسناتك
تزودوا فأن خيرا الزاد التقوى
اللهم انصر اخواننا المسلمين المجاهدين في كل مكان
أخي الحبيب بالنسبة لكود فتح قاعدة البيانات بكلمة سر قد نجحت فيها ولكن ضغط قاعدة البيانات لم يفلح
"هذه دالة لضغط قاعدة بيانات Access باستخدام كائنات ADO "حتى لو كان بها كلمة سر" , ولابد من إضافة المكتبة JRO لمراجع (References) البرنامج ."
لم أعرف كيف أجد مكتبة JRO فأرجو منك عزيزي أن تدلني على كيفية استخراجها من Refrence
وشكرا لك مجددا
تزودوا فأن خيرا الزاد التقوى
اللهم انصر اخواننا المسلمين المجاهدين في كل مكان
أخي Muhanned أنا طعمت في كرمك والرد علي في حل كيفية إضافة المكتبة إلى برنامجي فلماذا تاخرت علي
تزودوا فأن خيرا الزاد التقوى
اللهم انصر اخواننا المسلمين المجاهدين في كل مكان
اخي هل لازلت تزور المنتدى أخبرني أذا كنت أنت بخير ونريد طلتك حتى وأن كنت لاتعرف من اين تضاف ولكن نريد الإطمئنان عليك
تزودوا فأن خيرا الزاد التقوى
اللهم انصر اخواننا المسلمين المجاهدين في كل مكان
أخي الكريم Jamalbootruba ( مستعجل )
لإضافة المرجع Reference
إذهب إلى
Project ==>> References
ثم ابحث عن
Microsoft ActiveX Data Objects 2.x Library
و الـ x الصغيرة اللي بعد الفاصلة ممكن تكون 0 ،1،6 ، 7 أو 8
ضع علامة صع في المربع
ثم اضغط موافق
و بالتوفيق
والله أجل وأعلم
اللهم اغفر لي و لوالدي و للمؤمنين يوم يقوم الحساب
لا إله إلا الله عدد ما كان و عدد ما يكون و عدد الحركات و السكون
لإضافة المكتبة اتبع نفس خطوات الأخ الفاضل بن ملعاط ولكن اختر المكتبة التالية فهي التي تّعنى بعملية ضغط قاعدة البيانات واصلاحها وإيضا عمل نسخة احتياطية أو نسخة مماثلة وهي :
Micorosoft Jet and Replication Objects 2.x Library
حيث ال x وهو الأصدار المتوفر على جهازك .
بالتوفيق.
رحم الله والديك
كيف استخدام الدالة أعلاه
أخوت الأحبه اولا شكرا على الردود وانا كان همي ماهي المكتبة وليس في كيفية إضافتها إلى مشروعي وشكرا مرة أخرى على الردود الجميلة
تزودوا فأن خيرا الزاد التقوى
اللهم انصر اخواننا المسلمين المجاهدين في كل مكان
انا عملت ماقلت لي واشتغل البرنامج وتم ضغط قاعدة البيانات لكن المشكلة عندما افتح اي فورم اخر ثم احاول ان اقوم بغط قاعدة البيانات يظهر خطأ وسأرفق لكم مثال على الذي حصل معي فياريت تسعفوني بالحل وارجو قراءة ماريد بالضبط
الذي اريده هو انه عندما افتح اي فورمه ثم اخرج منها واعمل ضغط لقاعدة البيانات تعمل بدون أخطاء في المثال المرفق تعمل في حالة اني شغلت البرنامج اول مرة ولم اقم بفتح اي نموذج اخر ولكن في حالة فتح اي نموذج ثم الخروج منه يقوم بأرسال خطأ في المعمل
وشكرا
تزودوا فأن خيرا الزاد التقوى
اللهم انصر اخواننا المسلمين المجاهدين في كل مكان
وهذا نفس الملف ولكن مضغوط بالويندوز وليس Winzip حتى لا تواجه اي مشكلة في فتحه
تزودوا فأن خيرا الزاد التقوى
اللهم انصر اخواننا المسلمين المجاهدين في كل مكان
وينكم ياشباب احد يرد علي هل هذه المشكلة صعبة لهذه الدرجة
ارجو ان تردوا علي
تزودوا فأن خيرا الزاد التقوى
اللهم انصر اخواننا المسلمين المجاهدين في كل مكان
بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته ...
المشكلة كانت أنه عند فتح النموذج يقوم البرنامح بفتح اتصال مع قاعدة البيانات أما عند إغلاق النوذج فإن هذا الاتصال لا يتم إغلاقه وهذا هو سبب المشكلة حيث أن ضغط قاعدة البيانات يتطلب أن تكون قاعدة البيانات مغلقة .
تفضل الملف بعد التعديل
سبحان الله وبحمده ... سبحان الله العظيم
هذا الموضوع مغلق.