تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] اريد ان يتم تنفيذ هذا كود الحفظ او التحديث بسرعه عنذ اختيار سطر من الداتا جريد
#1
السلام عليكم ورحمه الله وبركاته

حياكم الله عزوجل
استخدم هذا الكود اولا اقوم بالبحث  عن رقم ID اذا وجده يذهب لجزء التحديث
واذا لم يجده يضفيه كسجل جديد
المشكله ان يحدث تعليق حوالي 3 ثواني حتي يتم التنفيذ لكن التنفيذ سليم فقط اريد ان يكون اسرع او لا يحدث تعليق
الكود المستخدم
اولا البحث عن ال id موجود ام لا
PHP كود :
Dim search_command As New MySqlCommand("SELECT * FROM `student` WHERE `Id` = @id"connection)

 
       search_command.Parameters.Add("@id"MySqlDbType.Int64).Value TextBox1.Text

        Dim adapter 
As New MySqlDataAdapter(search_command)

 
       Dim table As New DataTable()

 
       Try

            adapter
.Fill(table)

 
           If table.Rows.Count 0 Then

goto Updatesub

            Else

goto Savesub
            End 
If

 
       Catch ex As Exception

            MessageBox
.Show("ERROR")

 
       End Try 
كود التحديث
PHP كود :
Updatesub:
 
 Private Sub ButtonInsert_Click(sender As ObjectAs EventArgsHandles ButtonInsert.Click

        Dim insert_command 
As New MySqlCommand("INSERT INTO `student`(`FullName`, `Address`, `BirthDate`) VALUES (@fln,@adds,@brd)"connection)
 
       insert_command.Parameters.Add("@fln"MySqlDbType.VarChar).Value TextBox2.Text
        insert_command
.Parameters.Add("@adds"MySqlDbType.VarChar).Value TextBox3.Text
        insert_command
.Parameters.Add("@brd"MySqlDbType.Date).Value DateTimePicker1.Value

       
If command.ExecuteNonQuery() = 1 Then
            MessageBox
.Show("Data Inserted")

 
       Else
            MessageBox
.Show("Data NOT Inserted")
 
       End If

 
   End Sub 
كود الاضافه
PHP كود :
Savesub:

 
       Dim update_command As New MySqlCommand("UPDATE `student` SET `FullName`=@fln,`Address`=@adds,`BirthDate`=@brd WHERE `Id` = @id"connection)
 
       update_command.Parameters.Add("@id"MySqlDbType.Int64).Value TextBox1.Text
        update_command
.Parameters.Add("@fln"MySqlDbType.VarChar).Value TextBox2.Text
        update_command
.Parameters.Add("@adds"MySqlDbType.VarChar).Value TextBox3.Text
        update_command
.Parameters.Add("@brd"MySqlDbType.Date).Value DateTimePicker1.Value

       
If command.ExecuteNonQuery() = 1 Then
            MessageBox
.Show("Data Updated")

 
       Else
            MessageBox
.Show("Data NOT Updated")
 
       End If

 
   End Sub 
الرد }}}
تم الشكر بواسطة:
#2
اذا كنت تتعامل مع قاعدة بيانات في استضافة فهذا طبيعي لانك تتصل بقاعدة البيانات مباشرة
وهذه الطريقة لها مخاطر كبيرة لامكانية تسرب نص الاتصال والذي يحتوى بيانات الاتصال كاملة
بما فيها الرابط واسم المستخدم وكلمة المرور

الافضل ان تتعامل بطريقة ارسال البيانات باسلوب POST وهي معروفة غالبا
أو أن تستخدم اسلوب WebService ولو انه ليس سهلا لمن لا يعرفها
الرد }}}
تم الشكر بواسطة: dametucorazon , dametucorazon
#3
وعليكم السلام ورحمة الله وبركاته

الاسباب التى تترتب على تاخير تنفيذ الامر وما شبه

1- سرعة اداء السيرفر الذى يحتوى على قاعدة البيانات.
2- حجم قاعدة البيانات من البيانات الداخلية عند اتمام الاستعلام
3- طريقة الاستعلام عن طريق نص او رقم لحجم الذاكرة المستهلكة عند التنفيذ
4- كثرة تنفيذ الامر فى اوان واحد...

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

وبخصوص رقم 3 خارج النطاق حيث انك تقوم بالبحث عن طريق رقم وليس نص
ولكن انصح ان تجعل نوع الاستعلام 
PHP كود :
Int32
بدلاً من
Int64 

فلا يوجد اى فرق بينهم ولكن تجنباً من حالة السيرفر
بخصوص 1 و 4 فهم الاهم واكثرهم اهمية هو رقم 4
يجب وضع كود فى بداية الزر وهو كالتالى
كود :
Button1.Enabled = False

وينتهى بكود ويفضل قبل ظهور الرسالة وهو
كود :
Button1.Enabled = True

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

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

ناتى فى رقم 1 واخراً وهو العامل الرئيسي
الذى يترتب عليه سرعة تنفيذ الامر فى استقبال وارسال البيانات
فيجب قبل مواصفات السيرفر هو حالة الانترنت 
والاتصال بالخادم ان لا يكون منقطع فى بعض الاحيان
والمواصفات هو عامل رئيسيى لتنفيذ الامر فى غمضة عين 
فكلما كان المواصفات اعلى كلما كان التنفيذ اسرع

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

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


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة: dametucorazon , dametucorazon
#4
الاخ GameOver   شكرا لك
الاخ elgokr جزاك الله خيرا علي التوجيه
الرد }}}
تم الشكر بواسطة: elgokr
#5
الشكر لله

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

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


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مشكلة في عدم الحفظ والتعديل مصمم هاوي 3 881 17-08-25, 10:13 AM
آخر رد: أبو خالد الشكري
  خطأ في كود الجمع عند الحفظ مصمم هاوي 4 300 20-04-25, 04:01 AM
آخر رد: مصمم هاوي
  [سؤال] اريد طباعة تقرير ريبورت فيو مباشرة فور عرض التقرير mh66 1 557 22-03-25, 09:59 AM
آخر رد: mh66
  اريد كود لو سمحتم خالد كامل1 10 1,199 15-02-25, 02:15 PM
آخر رد: خالد كامل1
  اريد كود معين اثابكم الله خالد كامل1 1 456 04-02-25, 09:28 PM
آخر رد: aliday03
  ابغي ارجع قيمة الداتا قراد فيو من جديد عندي مشكله khalidalwdi 3 628 05-12-24, 02:21 AM
آخر رد: aljzazy
  تنفيذ السكريبت لانشاء قاعدة بيانات محمد خيري 2 370 30-11-24, 01:17 AM
آخر رد: محمد خيري
  اريد كود يحذف جميع سجلات جدول بقاعدة بيانات اكسس دفعه واحده khalidalwdi 2 634 18-11-24, 01:02 AM
آخر رد: rdxdz
  اريد جلب عدد محدد من السجلات من قاعدة بيانات اكسس الى الداتا قراد فيو يوجد مثال khalidalwdi 2 666 12-11-24, 12:19 PM
آخر رد: khalidalwdi
  التحكم في ارتفاع صفوف الداتا جريد فيو cvcvcv 3 4,659 09-10-24, 08:28 PM
آخر رد: Kamil

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


يقوم بقرائة الموضوع: