تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
سؤال الى ذوي الخبرة ....أرجو إيفادي من خبراتكم مشكوريين
#1
السلام عليكم و رحمة الله وبركاته

تحية طيب أما بعد,,,

أرجو إيفادي من ذوي الخبرة و التجربه و جزاكم الله عني كل خير

شرح مختصر : لدي هو انه  لدي برنامج بلغة فيجول بيسك 6 و قاعدة بيانات SQL SERVER و قمت بتنزيل قاعدة البيانات على السيرفر موجود بمدينة أخرى و مربوط معه 7 فروع كل فرع بمدينه أخرى.
قاعدة البيانات تحتوي على أكثر من 200 الف Row يقوم البرنامج بالبحث بينها و حساب التكلفة ..الخ , كانت قاعدة البيانات أكسس و تم تحويلها ال SQL SERVER تحسن الأداء قليلا لكن يبقى بطيء.

المشكلة هي البطئ عند العمل على البرنامج , لا أعرف ما الحل لذلك أرجو إيفادي بخبراتكم جزاكم الله عني كل خير.

ها هناك حلول ليعمل بشكل سريع.

أرجو المساعدة إذا أمكن
الرد }}}
تم الشكر بواسطة:
#2
السلام عليكم ورحمة الله وبركاته 
اهلا بك اخي رمزي 
بطبيعة الحال الاتصال بقواعد البيانات خاصة على شبكة الانترنت 
لها مدى يزيد ويضعف من قوتها لكننا نحاول قدر المستطاع تجنب البطؤ ببعض الامور منها : 
1. استضافة قوية و يفضل استضافة خاصة فقط لقاعدة البيانات الخاصة بالمشروع 
2. تحرير جمل الاستعلام و جمل الاتصال من حيث فتح القنوات و اغلاقها في كل اجراء
3. استخدام الـ Threading للحفاظ على توازن الاجرات المتدفقة 
هذا درس كامل لكيفية التعامل مع الـ Threading وتوظيفه في المشروع الخاص بنا
  للأخ الحبيب احمد منصور جزاه الله خير الجزاء 


يجب مراعاة الكم الهائل من السجلات حين استدعاؤها حيث من الممكن ان تحتوي بعض الحقول على صور او ملفات
و بالتالي ستكون قراءتها بطيئة جداً على فرض لو قمنا بالاستعلام عن 5000 سجل او اكثر  
بهذه الحالة عند استدعاء سجلات من جدول ما علينا ان نقوم بارجاع بعض منها فقط تابع المقارنة : 

PHP كود :
If Rs.State adStateOpen Then Rs.Close
Rs
.Open "Select *From TB1 Order By ID "dBadOpenStaticadLockOptimistic 
على سبيل الفرض بأن الجدول TB1  يحتوي على 15 حقل 
عند استدعاء البيانات سيقوم بارجاعها كلها بلا استثناء تماماً كما هي في الجدول 
لكن الطريق الصواب بهذه الحالة نقوم بارجاعها بهذا الشكل 
PHP كود :
If Rs.State adStateOpen Then Rs.Close
Rs
.Open "Select ID_TB,Name_TB,Number_TB From TB1 Order By ID "dBadOpenStaticadLockOptimistic 
حيث اننا قمنا بهذه الجملة بارجاع فقط ثلاثة حقول لا غير 
يتم التعامل مع بقية الحقول عند الضرورة ( تقسيمها الى اجزاء ) . 
طريقة اخرى يمكننا اتباعها فرضا لو كانت لدينا كمية كبيرة من السجلات لنفترض عددها 250000 سجل 
PHP كود :
SELECT TOP 50 PERCENT FROM Customers

و هذه الجملة تفيد بارجاع فقط 50 % من الـ 250000 سجل اي نصفها تماماً 
مع مراعاة ضبط السجلات المتدفقة وضبط صيانة قاعدة البيانات بين الحين و الآخر .
بالتوفيق 
الرد }}}
تم الشكر بواسطة: السيد الغالي , السيد الغالي


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  سؤال في الاعداد العشرية في الفيجوال بيسك ٦ tighrmte 6 1,018 03-09-23, 07:49 AM
آخر رد: جلال اليمني
  سؤال بخصوص الاكمال التلقائي للنص hannileo 0 622 13-06-22, 06:17 PM
آخر رد: hannileo
  [vb6.0] سؤال عن WebBrowser muad 5 1,519 17-11-21, 04:57 PM
آخر رد: ahmed.m
  [vb6.0] لماذا لم يجيب أحد على سؤالي ؟؟؟ - أرجو الرد hamada salah90 2 1,146 23-08-21, 01:18 AM
آخر رد: hamada salah90
  أريد من ذوي الخبرة تزويدي ببرنامج ترتيب الكود في فيجول بيسك rami_cis 4 2,126 24-11-20, 04:07 AM
آخر رد: rami_cis
  أطلب مساعدة من الأعضاء ذوي الخبرة : أريد طريقة حفظ ملف من نوع PDF في قاعدة بيانات SQL rami_cis 2 1,434 23-11-20, 01:03 AM
آخر رد: rami_cis
  [vb6.0] سؤال chaabane 0 1,198 04-07-20, 01:09 AM
آخر رد: chaabane
  [vb6.0] سؤال في الإستعلام بالتاريخ VB New 5 2,154 18-11-19, 12:59 PM
آخر رد: asemshahen5
  سؤال عن قص الصورة للخبراء محمد حمد محمد سليمان 0 1,377 30-07-19, 11:51 PM
آخر رد: محمد حمد محمد سليمان
  عايز سؤال ازاي عملية قراء الاعداد باللغة الانجليزية حامد محمد 4 2,174 18-01-19, 02:19 PM
آخر رد: حامد محمد

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم