تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
ادخال بيانات لقاعدة بيانات عن طريق عداد
#6
(05-08-19, 10:54 PM)ابراهيم ايبو كتب : السلام عليكم اخي الكريم
لنفترض ان لديك في الداتاغرايد 3 حقول : ID ,Item,Total
والداتاغرايد فيها عدد من السجلات وتريد حفطها في جدول اسمه Table
الامر نفسه جملة الانسرت العادية لكن هنا ستأخذ قيم الحقول من الداتاغرايد وفق جملة For بدلا من مربعات الادخال
بحيث ياخذ الصفوف تباعا واحدا بلو الاخر ويقوم بالحفظ كالمعتاد
واليك الكود للحقول التي ذكرتها لك يبقى ان تغير الاسماء وعدد الحقول لما عندك
كود :
Dim Cmd As New OleDbCommand()
   Private Sub Btn_Save_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Save.Click
'هنا ستقوم بتعريف هذه المتغيرات
       Dim Id As Integer
       Dim item As String
       Dim total As String
       Dim Cmd As New OleDbCommand("insert into Table (Id,Item,Total)values(@Id,@Item,@Total)", con)
       ' تحتاج الى هذه الفور زيادة على الحفظ العادي
       For i As Integer = 0 To Datagrid1.Rows.Count - 1
           Id = Datagrid1.Rows(i).Cells(0).Value
           item = Datagrid1.Rows(i).Cells(1).Value
           total = Datagrid1.Rows(i).Cells(2).Value
       Next

       Cmd.Parameters.Add(New OleDbParameter("@Id", OleDbType.Integer)).Value = Id
       Cmd.Parameters.Add(New OleDbParameter("@Item", OleDbType.VarWChar)).Value = item
       Cmd.Parameters.Add(New OleDbParameter("@Total", OleDbType.VarWChar)).Value = total
       If con.State = ConnectionState.Open Then con.Close()
       con.Open()
       Cmd.ExecuteNonQuery()
       con.Close()
       MessageBox.Show("تم حفظ البيانات بنجاح", "حفظ", MessageBoxButtons.OK, MessageBoxIcon.Information)

   End Sub
بعد إذنك أخي ابراهيم يجب وضع الباراميتر داخل اللوب لانها ستاخذ فقط اخر سجل و لم تضيف السجلات التي قبله في حال كان عامل الغريد كاملا للإضافة .
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , سعود


الردود في هذا الموضوع
RE: ادخال بيانات لقاعدة بيانات عن طريق عداد - بواسطة asemshahen5 - 06-08-19, 10:11 AM


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


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