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

مشكلة في النسخ الاحتياطية بسبب الأتصال بقاعدة البيانات

مغلق
بدأه layan في 20 يوليو 2006 · 14 رد · 1,316 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أعزائي

السلام عليكم

عندي مشكلة وهي كالتالي :

برنامجي او مشروعي مكون من قاعدتين أكسس DB1 و DB2

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

المشكلة هي

عند العمل مع النسخ الأحتياطية لا يتم عمل نسخ احتياطية وذلك بسبب اتصال القاعدة

أريد كود يقوم بفصل القاعدة عند إغلاق الفورم المتصل بالقاعدة

حيث انني عند اغلاق الفورم لاحظت ان القاعدة لا تزال تعمل

المطلوب بأختصار هو: كود يقوم بفصل القاعدة عند الخروج من الفورم والعودة للقائمة الرئيسية

آسف على الأطالة وأرجو تحملي لأنني مبتدئ بالبرمجة

والف الف شكر لكم جميعاً

كلمات اتعبت الملائكة في كتابة الأجر فذهبوا وشكوا إلى ربهم .... ماذا يفعلون

فقال لهم سبحانه وتعالى اطووها بصحائفها وضعوها تحت عرشي فتبقى حسناتها إلى يوم القيامة الله اكبر

(( اللهم لك الحمد كما ينبغي لجلال وجهك وعظيم سلطانك))

#2

أخي layan لنفرض أن المتغير الذي قمت بتعريفه كاكائن الاتصال بقاعدة البيانات اسمه db و كائن السجلات هو rs طيب ؟

الأن عندما تريد قطع الاتصال بالسجلات فإن العمل سيكون كالتالي :

rs.Close

لقد قمنا بقطع الاتصال بالسجلات و الجدوال و لكن قاعدة البيانات لا تزال متصلة بالبرنامج .

أما إذا أردت قطع الاتصال بقاعدة البيانات و الذي هو عن طريق الكائن db فسيكون العمل كالتالي :

db.Close

الآن تم إغلاق قاعدة البيانات و سيترتب على ذلك إغلاق كائن السجلات rs أيضاً

أما بالنسبة لأمر إغلاق قاعدة البيانات قبل عملية النسخ الاحتياطي فهو أمر طبيعي

لأنه لا يمكن ( نسخ أو حذف أو إعادة تسمية ) ملف ما يزال على قيد التشغيل .

اقتباس
المطلوب بأختصار هو: كود يقوم بفصل القاعدة عند الخروج من الفورم والعودة للقائمة الرئيسية

سيكون المطلوب كالتالي :

Private Sub Form_Unload(Cancel As Integer)
db.Close
End Sub

لقد وضعنا أمر إغلاق قاعدة البيانات في إجراء Form_Unload ( تفريغ النموذج من الذاكرة ) أي عند إغلاق الفورم .

إن شاء الله ردي واضح

مواضيع و دروس
الكتابة بعدة ألوان داخل الــ TetxBoxمكتبة الأكوادتحميل الــ Visual Basic Express 2005
تحميل فيجوال بسيك 6أكواد × أكواددروس في الخوارزميات
لتحميل عدة إصدارات من كريستال ريبورتتحميل برنامج Activ Skin 4.3جمل الــ Sql من الألف إلى الياء
معظم المواقع المختصة بالفيجوال بيسيكموقع كويس للأيقوناتمرجع شامل لأدوات ActivX
كيفية نطق الحرف المكتوب شرح عن كيفية إقامة علاقة مع Data Reprot باستخدام الــ DataEnvironment علاقة مع الـ Datareport بدون استخدام DataEnvironment (( شرح ))
كتاب Migrating From DAO to ADOإضافة لـ VB6 بريمج IndenterVB, إضافة لبيئة تطوير فيجوال بيسك 6حوار بينى و بين عضو حول ال winsock , اتمنى ان يعجبكم
Smart Indenter 3.5 لتنسيق الأكواد, هديه لكل الأعضاء السلسلة الدهبية في المواضيع العلمية ، إستغلال الـ Balloons في الـ Windows XP مصفوفات الأدوات Control Arrays افكار وتلميحات ! , لمن افتقدها من أيام الـ VB6.0
جعل خلفية الـ Mid Form تظهر بالكامل خواص الاداة Winsock لربط الاجهزة عن طريق الانترنتكيف يتم عمل تقارير بإستخدام HTML

7.gif
#3

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

الاخت ليان

وجميع الأعظاء ،، الحقيقه وجدت الموضوع هذا متكرر في أكثر من منتدى بخصوص نعمل نسخه لقاعدة البيانات كيف وهي تكون متصله

الحل هاهو

db.Close

Dim fso, F

Set fso = CreateObject("Scripting.FileSystemObject")
On Error Resume Next

aa = Format(Date, "yyyymmdd") & Format(Time, "hhmmss")
fso.copyfile App.Path & "\" & "db1.mdb", "d:\db1" & aa & ".mdb]"

ss = MsgBox(" هل أنته متأكد من الخروج", vbApplicationModal + vbYesNo + vbDefaultButton1, "**محمد السويهري**")
If ss = 7 Then

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

Exit Sub

End If

End

جربي الكود في كوماند الخروج من البرنامج وإنتي حتدعيلي

ملاحظه db1 هنا اسم قاعدة البيانات حيعمل لها نسخه اسمها "db1.mdb+التاريخ +الوقت بالثانيه"

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

ولو ضغطنا لا نريد الخروج من البرنامج سوف يتصل بقاعدة البيانات وأيضاَ حيكون عمل النسخه لقاعدة البيانات ،،

ولو ضغطنا نعم نريد الخروج من البرنامج سوف ينفذ الأمر End ويظهر من البرنامج وأيضاَ حيكون عمل النسخه لقاعدة البيانات في الدرايفر D

جربي الكود ولو فيه إشكاليه انا موجود

تحياتي للجميع

#4

عزيزي محمد

السلام عليكم

أنا لا أريد اخذ نسخة عن طريق زر الخروج

المطلوب هو :

عند ضغط زر الخروج هو إغلاق الفورم الذي يتصل بقاعدة البيانات وقطع الأتصال بالقاعدة

وعرض الفورم الخاص بالقائمة الرئيسية

وتظل القاعدة منفصلة تماماً عن البرنامج لكي اتمكن من اخذ النسخ الأحتياطية واسترجاع

النسخ السابقة

وبعد ذلك عند الدخول للفورم الأول يتم الأتصال بالقاعدة مرة أخرى

بأختصار اريد عند اغلاق الفورم يتم قطع الأتصال بالقاعدة نهائياً

المعذرة على الأطالة

كلمات اتعبت الملائكة في كتابة الأجر فذهبوا وشكوا إلى ربهم .... ماذا يفعلون

فقال لهم سبحانه وتعالى اطووها بصحائفها وضعوها تحت عرشي فتبقى حسناتها إلى يوم القيامة الله اكبر

(( اللهم لك الحمد كما ينبغي لجلال وجهك وعظيم سلطانك))

#5

لماذا لا أحد يرد

كلمات اتعبت الملائكة في كتابة الأجر فذهبوا وشكوا إلى ربهم .... ماذا يفعلون

فقال لهم سبحانه وتعالى اطووها بصحائفها وضعوها تحت عرشي فتبقى حسناتها إلى يوم القيامة الله اكبر

(( اللهم لك الحمد كما ينبغي لجلال وجهك وعظيم سلطانك))

#6

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

اخي اذا كنت تريد قطع الاتصال بمجرد اغلاق الفورم فضع الكود التالي تحت حدث Form_QueryUnload

rs.close

CN.close

وعند الدخول للفورم الاول ضع كود الاتصال بقاعدة البيانات وكود فتح الجدول في حدث Form_Load

أرجو انه يكون ده المطلوب :)

============

الى اللقاء

JusT LeT YouR MinD WorK

#7

خير الكلام ماقل ودل

والله انك ملك وملك هذا المنتدى بالذات يا أستاذنا الفاضل

MR^King

الف الف شكر لأستاذي

كلمات اتعبت الملائكة في كتابة الأجر فذهبوا وشكوا إلى ربهم .... ماذا يفعلون

فقال لهم سبحانه وتعالى اطووها بصحائفها وضعوها تحت عرشي فتبقى حسناتها إلى يوم القيامة الله اكبر

(( اللهم لك الحمد كما ينبغي لجلال وجهك وعظيم سلطانك))

#8

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

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

1- عمل فورم كبداية للبرنامج وبدون ربطها مع اى قاعدة بيانات

2-يمكن عمل قائمه منسدله كقائمه ملفات وتحتها بند تشغيل البرنامج (والمقصود هنا هو استدعاء الفورم الخاصه بتشغيل البرنامج والمرتبطه بقواعد البيانات وماالى ذلك)

3-فى الكود الخاص بالبند تشغيل البرنامج يتم وضع الكود التالى

Dim a, b

a = "C:\Production\Product.mdb"

b = "D:\backup\backproduct.mdb"

FileCopy a, b

حيث انه بمحتوى المجلد المسمى production يوجد ملف قاعدة البيانات المسماه product.mdb وهو الملف الاصلى المطلوب عمل نسخه احتياطيه منه وهو موجود على ال C

ومطلوب وضع النسخه الاحتياطيه مثلا على ال D داخل المجلد المسمى backup

ارجو ان تكون هذه الفكره ذات فائده

والله ولى التوفيق

-waf

#9

السلام عليكم

لم تنحل المشكلة بعد لا يزال هناك اتصال بقاعدة البيانات حتى بعد الخروج من الفورم

ويوجد عندي اتصالين بقاعدة البيانات وهما

Data1

Adodc1

علماً ان كود الخروج هو

Form4.Show
Me.Hide

وكود الـ Form_QueryUnload

RS.Close
CN.Close

وكود الـ Form_Unload

RS.Close
CN.Close

أرجو النظر في الأكواد التالية والرد عاجلاً لأن البرنامج تعطل بهذا السبب

كلمات اتعبت الملائكة في كتابة الأجر فذهبوا وشكوا إلى ربهم .... ماذا يفعلون

فقال لهم سبحانه وتعالى اطووها بصحائفها وضعوها تحت عرشي فتبقى حسناتها إلى يوم القيامة الله اكبر

(( اللهم لك الحمد كما ينبغي لجلال وجهك وعظيم سلطانك))

#10

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

اخي الكريم قم بوضع هذا الكود تحت زر الخروج

Form4.Show
Me.Hide
unload me

JusT LeT YouR MinD WorK

#11

اخوي ليان والاخوه الاعزاء

هذا رابط لبرنامج النسخه الإحتياطيه موضح كل شي بالكود بالعربي

يعني مثال بسيط للغايه وذو فائده إن شاء الله

تفضل بزيارة الموضوع وحمل البرنامج

#12

الف الف شكر لكم جميعاً

ولكن لا تزال المشكلة قائمة

أرجو التوضيح بالنسبة لأكواد الـ

Form_Unload

Form_QueryUnload

ماذا اعمل بها هل تبقى او يجب إزالتها

لأنني بعد إزالتها عمل البرنامج وعند الضغط على زر الخروج كان ينتقل الى الفورم 4 بدون مشاكل

ولكن لا يزال الأتصال بقاعدة البيانات قائم

تم تعديل هذه المشاركة بواسطة layan في 26 يوليو 2006 في 00:17

كلمات اتعبت الملائكة في كتابة الأجر فذهبوا وشكوا إلى ربهم .... ماذا يفعلون

فقال لهم سبحانه وتعالى اطووها بصحائفها وضعوها تحت عرشي فتبقى حسناتها إلى يوم القيامة الله اكبر

(( اللهم لك الحمد كما ينبغي لجلال وجهك وعظيم سلطانك))

#13

اين الشباب

كلمات اتعبت الملائكة في كتابة الأجر فذهبوا وشكوا إلى ربهم .... ماذا يفعلون

فقال لهم سبحانه وتعالى اطووها بصحائفها وضعوها تحت عرشي فتبقى حسناتها إلى يوم القيامة الله اكبر

(( اللهم لك الحمد كما ينبغي لجلال وجهك وعظيم سلطانك))

#14

أخى الكريم

فى هنا مثال كامل على أخذ وأسترجاعه نسخه من القاعده

/index.php?showtopic=102607

Never Give Up You Are Programmer

Being Genius Is The Step Before Madness

Artificial Intelligence Is No Match For Natural Stupidity

#15

الف الف شكر لكم جميعاً

كلمات اتعبت الملائكة في كتابة الأجر فذهبوا وشكوا إلى ربهم .... ماذا يفعلون

فقال لهم سبحانه وتعالى اطووها بصحائفها وضعوها تحت عرشي فتبقى حسناتها إلى يوم القيامة الله اكبر

(( اللهم لك الحمد كما ينبغي لجلال وجهك وعظيم سلطانك))

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

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

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

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

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

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