07-09-20, 10:14 PM
(07-09-20, 09:14 PM)momani33 كتب : السلام عليكم : لدي مشكلة عند الضغط على زر الحفظ وتتلخص المشكلة ان البرنامج يتحاج حوالي 40 ثانية لحفظ البيانات حيث ان الجدول يحتوي على 25 الف سجل عندما كانت السجلات قليلة كانت الامور تمام ما الحل ؟؟؟؟؟؟
كود حفظ السجل :
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
Else
Dim dr = dt.NewRow
dr!invoice_number = invoice_number.Text
dr!store = store.Text
dr!invoice_date = invoice_date.Value
dr!Accounts_name = Accounts_name.Text
dr!Accounts_code = Accounts_code.Text
dr!invoice_note = ""
dr!invoice_descound = invoice_descound.Text
dr!invoice_tax = 0
dr!invoice_count = invoice_count.Text
dr!total_invoice = total_invoice.Text
dr!delegate_name = ""
dr!type_pay = type_pay.Text
dr!Shipping_company = ""
dr!earn_invoice = earn_invoice.Text
dr!Cuscusgroup = Cuscusgroup.Text
dr!cusGovernorate = cusGovernorate.Text
dr!cuscity = cuscity.Text
dr!pay_money = pay_money.Text
dr!code_print = 1
dr!user_invoice = user_name.Text
dr!total_string = amount_string.Text
dr!invoice_pound = invoice_pound.Text
dr!pay = pay_money.Text
dr!new_balace = new_balace.Text
dr!Accounts_adress = ""
dr!Accounts_phone1 = ""
dr!past_balace = Accounts_balace.Text
dr!money_plus = money_plus.Text
مثل ما قال اخي kiki انت بتجلب كل ما بداخل الجدول
كمان انت بتستخدم اسلوب قديم جدا
where للتحديث او الاستعلام
انت وضعت NewRow يعني بتقصد اضافه جديد فما داعي الى where
هذا هو اسلوب الدوت نت
PHP كود :
Dim sql = "insert into invoice_add(invoice_number,store,invoice_date,Accounts_name,Accounts_code,invoice_note,invoice_descound,invoice_tax,invoice_count,total_invoice,delegate_name,type_pay,Shipping_company,earn_invoice,Cuscusgroup,cusGovernorate,cuscity,pay_money,code_print,user_invoice,total_string,invoice_pound,pay,new_balace,Accounts_adress,Accounts_phone1,past_balace,money_plus) values(@invoice_number,@store,@invoice_date,@Accounts_name,@Accounts_code,@invoice_note,@invoice_descound,@invoice_tax,@invoice_count,@total_invoice,@delegate_name,@type_pay,@Shipping_company,@earn_invoice,@Cuscusgroup,@cusGovernorate,@cuscity,@pay_money,@code_print,@user_invoice,@total_string,@invoice_pound,@pay,@new_balace,@Accounts_adress,@Accounts_phone1,@past_balace,@money_plus)"
Dim cmd As New SqlCommand(sql, sqlconn)
cmd.Parameters.AddWithValue("@invoice_number", invoice_number.Text)
cmd.Parameters.AddWithValue("@store", store.Text)
cmd.Parameters.AddWithValue("@invoice_date", invoice_date.Value)
cmd.Parameters.AddWithValue("@Accounts_name", Accounts_name.Text)
cmd.Parameters.AddWithValue("@Accounts_code", Accounts_code.Text)
cmd.Parameters.AddWithValue("@invoice_note", "")
cmd.Parameters.AddWithValue("@invoice_descound", invoice_descound.Text)
cmd.Parameters.AddWithValue("@invoice_tax", 0)
cmd.Parameters.AddWithValue("@invoice_count", invoice_count.Text)
cmd.Parameters.AddWithValue("@total_invoice", total_invoice.Text)
cmd.Parameters.AddWithValue("@delegate_name", "")
cmd.Parameters.AddWithValue("@type_pay", type_pay.Text)
cmd.Parameters.AddWithValue("@Shipping_company", "")
cmd.Parameters.AddWithValue("@earn_invoice", earn_invoice.Text)
cmd.Parameters.AddWithValue("@Cuscusgroup", Cuscusgroup.Text)
cmd.Parameters.AddWithValue("@cusGovernorate", cusGovernorate.Text)
cmd.Parameters.AddWithValue("@cuscity", cuscity.Text)
cmd.Parameters.AddWithValue("@pay_money", pay_money.Text)
cmd.Parameters.AddWithValue("@code_print", 1)
cmd.Parameters.AddWithValue("@user_invoice", user_name.Text)
cmd.Parameters.AddWithValue("@total_string", amount_string.Text)
cmd.Parameters.AddWithValue("@invoice_pound", invoice_pound.Text)
cmd.Parameters.AddWithValue("@pay", pay_money.Text)
cmd.Parameters.AddWithValue("@new_balace", new_balace.Text)
cmd.Parameters.AddWithValue("@Accounts_adress", "")
cmd.Parameters.AddWithValue("@Accounts_phone1", "")
cmd.Parameters.AddWithValue("@past_balace", Accounts_balace.Text)
cmd.Parameters.AddWithValue("@money_plus", money_plus.Text)
If sqlconn.State <> ConnectionState.Open Then sqlconn.Open()
cmd.ExecuteNonQuery()
sqlconn.Close()
