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


 Dim sql = "select * from invoice_add where invoice_number=N'" & (invoice_number.Text) & "'"
        Dim adp As New SqlDataAdapter(sql, sqlconn)
        Dim ds As New DataSet
        adp.Fill(ds)
        Dim dt = ds.Tables(0)
        If dt.Rows.Count > 0 Then

            For a = 0 To dgv.Rows.Count - 1
                adp = New SqlDataAdapter("select * from item where itemcode=N'" & (dgv.Rows(a).Cells(0).Value) & "'", sqlconn)
                ds = New DataSet
                adp.Fill(ds)
                dt = ds.Tables(0)
                Dim dr3 = dt.Rows(0)
                'تحديث سجل كمية المادة المتبقية
                dr3!itemcount = Val(dgv.Rows(a).Cells(14).Value)
                dr3!total_price = dr3!itemcount * dr3!itembuyprice

                'تحديث سجل كمية المادة المباعه
                If dr3!out_count.ToString = "" Then
                    dr3!out_count = 0
                    dr3!out_count = Val(dr3!out_count) + Val(dgv.Rows(a).Cells(16).Value)
                    dr3!Profits = Val(dr3!Profits) + Val(dgv.Rows(a).Cells(8).Value)

                Else

                    dr3!out_count = Val(dr3!out_count) + Val(dgv.Rows(a).Cells(16).Value)
                    dr3!Profits = Val(dr3!Profits) + Val(dgv.Rows(a).Cells(8).Value)

                End If

                dr3!date_sale = invoice_date.Value
                Dim cmd4 As New SqlCommandBuilder(adp)
                adp.Update(dt)
            Next
            adp.Dispose()
            ds.Dispose()
            dt.Dispose()
           
            '---------------------------------------------------------------------------
            '----------------------------------------------------------------------------
            My.Computer.Audio.Play(My.Resources.alert, AudioPlayMode.WaitToComplete)
        End If
الرد
تم الشكر بواسطة: حريف برمجة
#2
السبب هو الاستعلام داخل For وهو خطأ جدا

adp = New SqlDataAdapter("select * from item where itemcode=N'" & (dgv.Rows(a).Cells(0).Value) & "'", sqlconn)

حاول ان تجعل الاستعلام مرة واحدة خارج For ومن ثم معالجته داخل for بعد ذلك
الرد
تم الشكر بواسطة: حريف برمجة , حريف برمجة
#3
للاسف تمت المحاول ولم تفلح العملية حيث اخراج جملة الاستعلام من داخل For ادى الى تحديث جميع القيم في الجدول المكون من 2000 سجل لقيمة واحدة وهذا خطا
اذا كان يوجد لديك تعديل الرجاء المساعده
الرد
تم الشكر بواسطة: حريف برمجة , حريف برمجة
#4
طيب ارسل مثال او اذكر تفاصيل عن البرنامج او قاعدة البيانات
الرد
تم الشكر بواسطة: حريف برمجة , حريف برمجة


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [VB.NET] اريد عرض اسماء الجداول من قاعدة البيانات سكوال سيرفرس alsaab120 2 53 , 01:45 AM
آخر رد: alsaab120
  تعديل علي progress bar mohamedat 10 321 05-05-21, 05:21 AM
آخر رد: bidaya
Lightbulb ارجوا المساعدة في طباعة الكاشير بدون إظهار التقرير abo.alaa315 6 214 02-05-21, 05:56 PM
آخر رد: alfaiz678
  عرض البيانات داخل التاتا جرد فيو بطريقة جداول متداخلة moahmed.abdelmohsen 6 238 30-04-21, 05:17 PM
آخر رد: mrfenix93
  المساعده في عرض البيانات moahmed.abdelmohsen 4 211 30-04-21, 03:11 PM
آخر رد: ابو انس
  العمل على قاعدة بيانات أونلاين وأوفلاين بنفس الوقت بشار نصري 1 175 29-04-21, 04:40 PM
آخر رد: mrfenix93
  [VB.NET] مطلوب كود يختص بحفظ البيانات Ayat.B.H 1 122 28-04-21, 07:45 AM
آخر رد: messry
  كيف يتم تعديل البيانات بين تاريخين في sql جيولوجي مبتدئ 3 201 28-04-21, 03:50 AM
آخر رد: جيولوجي مبتدئ
  [VB.NET] استعلام متقدم لعرض البيانات بالداتاجريد فيو محمد اسماعيل 4 239 27-04-21, 04:26 PM
آخر رد: messry
  [VB.NET] اختيار البيانات غير مكررة من الداتاتابل محمد اسماعيل 3 216 24-04-21, 06:23 AM
آخر رد: محمد اسماعيل

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


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