PDA

View Full Version : سوال: درج همزمان اطلاعات در دیتا گرید ویو



a1b2uu
چهارشنبه 31 شهریور 1389, 10:08 صبح
سلام
در جدول گرید ویو کاربر اطلاعات دارو یی را وارد می کند بعد از پر کردن هر ردیف باید دکمه ثبت روبزنه اگه بخام کاربر همه ردیف ها رو وارد کنه و فقط 1 بار ثبت رو بزنه چه کدی باید بنویسم؟(اینم کد برنامه که سطر جاری را چند بار ذخیره میکنه)


For i = 0 To DataGridView2.RowCount - 1


Dim a AsNew SqlConnection


a.ConnectionString = "Data Source=localhost;Initial Catalog= Matab;Integrated Security=True"
Dim b AsNew SqlCommand


Dim c AsNew SqlDataAdapterc.SelectCommand = 2
c.SelectCommand.CommandType = CommandType.Text
c.SelectCommand.CommandText = "use matab select * from pres"


c.SelectCommand.Connection = a


Dim d AsNew DataSet
d.Clear()



c.Fill(d)



b.Connection = a


b.CommandType = CommandType.Text



b.CommandText = "use matab insert into pres (PID,prestext,date) values ('" & DataGridView2.CurrentRow.Cells(0).Value & "','" & DataGridView2.R.Cells(1).Value & " ','" & DataGridView2.CurrentRow.Cells(2).Value & " ' )"


b.Connection = a
b.Connection.Open()


b.ExecuteNonQuery()


b.Connection.Close()


MsgBox(" ")



Next

ali_najari
چهارشنبه 31 شهریور 1389, 10:28 صبح
شما اول يه گيريد بسازيد و اطلاعات رو توش وارد كن و بعد در آخر سطر به سطر اطلاعات رو ذخيره كنيد

a1b2uu
چهارشنبه 31 شهریور 1389, 10:34 صبح
دوست عزیز من این کارو کردم ودرست هم کار میکنه ولی میخام ببینم راهی هست که اول تمام سطر ها رو پر کنه بعدش فقط یک بار دکمه ذخیره رو بزنه ؟

ashkan209
چهارشنبه 31 شهریور 1389, 12:23 عصر
دوست عزیز من این کارو کردم ودرست هم کار میکنه ولی میخام ببینم راهی هست که اول تمام سطر ها رو پر کنه بعدش فقط یک بار دکمه ذخیره رو بزنه ؟
از command builder به شکل زیر استفاده کن
oledb ها رو متناسب با بانکت تعویض کن


Dim da As New OleDb.OleDbDataAdapter("select * from table1", Cnn)
Dim ds As New DataSet
Dim cb As New OleDb.OleDbCommandBuilder(da)
da.DeleteCommand = cb.GetDeleteCommand
da.InsertCommand = cb.GetInsertCommand
da.UpdateCommand = cb.GetUpdateCommand

Cnn.Open()
da.Update(ds, "t")
Cnn.Close()

a1b2uu
چهارشنبه 31 شهریور 1389, 12:41 عصر
دوستان متوجه اشتباهم شدم این خط از کد باید اصلاح بشه

b2.CommandText = "use matab insert into pres (PID,prestext,date) values ('" & DataGridView2.Rows(i).Cells(0).Value & "','" & DataGridView2.Rows(i).Cells(1).Value & " ','" & DataGridView2.Rows(i).Cells(2).Value & " ' )"