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

تصليح و ضغط قواعد بيانات Access بواسطة Ado.NET

مغلق
بدأه TMS في 30 نوفمبر 2005 · 10 رد · 1,552 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

كنت دائماً أقوم بتصليح و ضغط قاعدة بيانات Access بواسطة ADO القديم في VB6 بواسطة DATA BASE Endine و هو أمر مهم لأن قاعدة البيانات قد تصبح ضخمة و بطيئة بعد فترة قصيرة من الإستعمال المكثف لها , لكنني لم أجد أي طريقة لفعل ذلك عبر ADO.NET , و بحثت عن Procedure مبيتة ما (كما هو في SQL Server) لفعل ذلك دون فائدة , فهل يملك أحدكم فكرة حول كيفية فعل ذلك ؟

newslatterlogo.jpg
#2

السلام عليكم

تفضل الرابط ضغط واصلاح قاعدة بيانات اكسس, كود

بالتوفيق إن شاء الله.

في المثال يتضح المقال

#3

شكراً لك .

ولكن هذه الطريقة كنت قد طبقتها و لكنها لم تعجبني (كما أنه لم تعجب المشاركين الأخرين) لأنني أضطر لإستخدام الـ ADO القديم المعتمد على Com لذا فقد كنت أبحث عن طريقة أخرى !

newslatterlogo.jpg
#4

السلام عليكم

وما المشكلة فى استخدام كائن COM فى كثير من البرامج نلجأ الى استخدام unmanged code

لحل بعض المشاكل والتى لا يمكن تطبيقها فى اطار العمل

توجد طريقة اخرى ولكنى اجدها غير مجدية فاللاستثناءات نصيبها فى الظهور

System.Diagnostics.Process.Start(
    "C:\Program Files\Microsoft Office\Office10\msaccess.exe",
    "C:\MyDB.mdb /compact C:\MyDBCompact.mdb")

VB.NET and C# Comparison

http://www.harding.edu/fmccown/vbnet_csharp_comparison.html

002.gif

=-=-=-=-=-=-=
ذو العلم يشقى فى النعيم بعلمه .:. واخو الجهالة فى الشقاوة ينعم
=-=-=-=-=-=-=
يا من بدنياه اشتغل . قد غره طول الأمل . فالموت يأتى بغتة . والقبر صندوق العمل
=-=-=-=-=-=-=
ان لم تستطع ان تجد ما تفعله فافعل ما لم تسطع ان تجده

screen_shot_2011-05-19_at_12.44.49_pm.pn

#5

انا استخدمت تقريبا نفس الكود هذا في 2003 واشتغل معايا تمام بس مع 2005 بيعطي رسالة خطأ

وفعلا نطلب حل اخر :)

<span style='color:green'>سؤل ابن عباس عن علمه كيف جمعه فقال :( أوتيت لسانا سؤولا وقلبا عقولا)</span>

#6
اقتباس
انا استخدمت تقريبا نفس الكود هذا في 2003 واشتغل معايا تمام بس مع 2005 بيعطي رسالة خطأ

لم اجربه معvb.net2005 ممكن توضحلنا الخطأ الى صار معك

VB.NET and C# Comparison

http://www.harding.edu/fmccown/vbnet_csharp_comparison.html

002.gif

=-=-=-=-=-=-=
ذو العلم يشقى فى النعيم بعلمه .:. واخو الجهالة فى الشقاوة ينعم
=-=-=-=-=-=-=
يا من بدنياه اشتغل . قد غره طول الأمل . فالموت يأتى بغتة . والقبر صندوق العمل
=-=-=-=-=-=-=
ان لم تستطع ان تجد ما تفعله فافعل ما لم تسطع ان تجده

screen_shot_2011-05-19_at_12.44.49_pm.pn

#7

ألخطأ في السطر

objJRO.GetType().InvokeMember("CompactDatabase", System.Reflection.BindingFlags.InvokeMethod, Nothing, objJRO, oParams)

<span style='color:green'>سؤل ابن عباس عن علمه كيف جمعه فقال :( أوتيت لسانا سؤولا وقلبا عقولا)</span>

#8

المشكلة يا أخي أنني لا أريد الى مشكلة تسجيل عناصر Com في الـ Registry , حيث أن التخلص من هذه المشكلة في ال.NET كانت من أكثر الأشياء التي أعجيتني , لأن البرامج التي أبنيها يحدث فيها تكرار كثير لذا أستخدم الكثير من الـ Controls و Dll's في براماجي !

لذا لا أريد الرجوع الى هذه المشكلة التي أرقتني !

newslatterlogo.jpg
#9

طيب من سيفيدنا في هذا المجال؟

<span style='color:green'>سؤل ابن عباس عن علمه كيف جمعه فقال :( أوتيت لسانا سؤولا وقلبا عقولا)</span>

#10

أظن أنه ليس هناك طريقة في Ado.net مباشرة حيث أن مايكروسوفت تصب كامل تركيزها في برمجة SQL Server عبر ADo و تهمل Access مع أنه من غير المنطقي إستخدام السيرفير في برامج صغير وحيدة المستخدم !

newslatterlogo.jpg
#11

هناك مشكلة

عندما تكون متصل بقاعدة البيانات access ويكون الملف الذي بامتداد ldb موجود لايمكن ضغط قاعدة البيانات

وانا استخدم الاتصال المتصل فكيف الحل؟

سويت conn.close

ولكن لا فائدة

<span style='color:green'>سؤل ابن عباس عن علمه كيف جمعه فقال :( أوتيت لسانا سؤولا وقلبا عقولا)</span>

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

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

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

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

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

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