منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : الاداء العام ليس تمام لقاعدة البيانات
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله وبركاتة

كان لدى قاعدة بيانات بالاكسس 2003 وبرنامج بالفيجوال بيسك 6

وقمت باستيراد جميع الجداول بقاعدة بيانات جديدة على SQL SERVER 2008 R2

على سرفر مسطب بة وندوز 7 و مواصفاتة كما فى الصورة

[attachment=1600]

وتم عمل جميع المفاتيح الاساسية بين الجداول كما بالاكسس ...

والامر تمام ولا يوجد مشكلة فى شاشات البرنامج وتقاريرة ...................

والاتصال بقاعدة البيانات عن طريق الكود التالى

Public Sub bance_mydb()
If DB.State = adStateOpen Then DB.Close

DB.ConnectionString = "File Name=" & App.Path & "\connn.UDL;"
DB.Open strCnn

End Sub

حيث \connn.UDL

هى كما بالصورة التالية

[attachment=1601]

.....................................................................................................................

مع العلم اننى استخدم برنامج Setup Factory 9

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

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

*********** المشكلة فى الاداء العام للبرنامج .. هو بطىء الى حد ما

بحيت عن الضغط على زر الحفظ .. تاتى رسالى تم الحفظ بنجاح بعد حوالى 4 ثوانى

وكذلك عند فاتح فورم به حدث فى اللود ... تفتح بعد حوالى 3 ثوانى

... مع العالم ان مساحىة قاعدة البيانات MDF 92 mb
و مساحة ال log 156 mb

وعدد الجداول بقاعدة البيانات 35 جدول

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

ومع العلم ايضا انة تم عمل index للحقول المستخدمة فى الجداول بجانب المفاتيح الاساسية مثل حقل ال name

....................................................................

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

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


اسف جدا على الاطالة

تحياتى
السلام عليكم

- تأكد من صحة توصيل كابلات الشبكة وأن الشبكة تعمل بكفاءة من غير أي تقطيع أو تأخر ، وتستطيع فحص جودة سرعة الإتصال للشبكة أعتقد عن طريق الأمر Ping ثم رقم آيبي السيرفر أو آيبي أي جهاز متصل بالشبكة وذلك من خلال شاشة "التشغيل" من قائمة إبدأ أو من خلال موجة الأوامر Command DOS .

- أيضاً أعتقد أن تثبيت البرنامج على كل جهاز طرفي أو فرعي يساهم في تفادي التعليق والتأخر الذي تلاحظه ، طبعاً تثبيت البرنامج فقط بدون قاعدة البيانات والتي ستكون في السيرفر فقط ، يعني جرب تترك عمل إختصار للبرنامج في الأجهزة الفرعية ممكن يكون حل للمشكلة .

- أيضاً الأكواد الخاصة بالحفظ ، تجنب أن تفتح الجدول كله لكي تحفظ سجل واحد فقط ، هذا يعني تحميل جميع بيانات الجدول في الكائن Rs مثلاً وأكيد لو الإتصال بالشبكة ضعيف فسيكون التأخر كبير ، لتجنب ذلك إستخدم الإدخال المباشر للبيانات في الجدول عن طريق الأمر Insert into Table , ونفس الشئ مع حذف السجلات .

- أيضاً نوعية كابلات الشبكة وطول مسافتها بين الأجهزة والسيرفر .

- آمل أن تفيدك هذه الملاحظات .

- تحياتي .
السلام عليكم

استاذى . اشكرك لسرعة التجاوب

- تأكد من صحة توصيل كابلات الشبكة وأن الشبكة تعمل بكفاءة من غير أي تقطيع أو تأخر ، وتستطيع فحص جودة سرعة الإتصال للشبكة أعتقد عن طريق الأمر Ping ثم رقم آيبي السيرفر أو آيبي أي جهاز متصل بالشبكة وذلك من خلال شاشة "التشغيل" من قائمة إبدأ أو من خلال موجة الأوامر Command DOS .

---------------------------------------------------------------------------------------
السرفر موصل به عدد 2 جهاز فقط وطول السلك لا يزيد عن 5 متر

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

- أيضاً الأكواد الخاصة بالحفظ ، تجنب أن تفتح الجدول كله لكي تحفظ سجل واحد فقط ، هذا يعني تحميل جميع بيانات الجدول في الكائن Rs مثلاً وأكيد لو الإتصال بالشبكة ضعيف فسيكون التأخر كبير ، لتجنب ذلك إستخدم الإدخال المباشر للبيانات في الجدول عن طريق الأمر Insert into Table , ونفس الشئ مع حذف السجلات .
.......................................................................................................................

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


ولكن اعتقد ان السبب الرئيسى هو امكانيات السرفر ( جهاز عادى )
السلام عليكم ورحمة الله وبركاته

اخي الكريم جرب الاتصال هكذا

[
إقتباس :Public Sub open_data_base()
If Cn.State > 0 Then Exit Sub
With Cn 'Connection
.ConnectionTimeout = 30
.ConnectionString = "provider = SQLOLEDB.1;user ID = sa ;password = ;"
Cn = Cn & "Initial Catalog =Database;" & "data source =ServerIP"
.Open
End With
End Sub

بالتوفيق
استاذ احمد

اشكرك على التجاوب

كان هناك مسكلة فى جهاز السرفر ( تم تغير الرام )

شكرا لكل اعضاء المنتدى الكرام

تحياتى
حياك الله بالتوفيق