 |
|
VB.Net บันทึกข้อมูลจาก DataGridView ลงฐานข้อมูลไม่ได้ค่ะ!! |
|
 |
|
|
 |
 |
|
ต้องการบันทึกข้อมูลลงตาราง ทั้ง 2ตาราง โดยที่ตารางแรกจะเป็นตาราง Sale_Detail ส่วนตารางที่สองจะเป็นตาราง Sale ค่ะ 2ตารางนี้จะมี Sale_id เป็น PK ที่ใช้เชื่อมกันระหว่างตารางทั้งสอง ใช้ฐานข้อมูล accessค่ะ!!
Code
Private Sub btnconfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnconfirm.Click 'ปุ่มบันทึกข้อมูล
Dim sb As New StringBuilder
Dim tr As OleDbTransaction
Dim NumRows As Integer
tr = accon.BeginTransaction
Try
sb.Remove(0, sb.Length)
sb.Append("insert into Sale_Detail (Sale_id,Pro_id,Pro_SalePrice,Pro_amount) ")
sb.Append("values (@Sale_id,@Pro_id,@Pro_SalePrice,@Pro_amount)")
Dim sqladd As String
sqladd = sb.ToString
For i As Integer = 0 To DataGridView1.RowCount - 1
If Not DataGridView1.Rows(i).IsNewRow Then
With cmd
cmd.CommandText = sqladd
cmd.CommandType = CommandType.Text
cmd.Connection = accon
cmd.Parameters.Clear()
cmd.Transaction = tr
cmd.Parameters.Add("Sale_id", OleDbType.VarChar).Value = txt_sale_id.Text.Trim
cmd.Parameters.Add("Pro_id", OleDbType.VarChar).Value = DataGridView1.Rows(i).Cells(1).Value
cmd.Parameters.Add("Pro_SalePrice", OleDbType.Integer).Value = DataGridView1.Rows(i).Cells(4).Value
cmd.Parameters.Add("Pro_amount", OleDbType.Integer).Value = DataGridView1.Rows(i).Cells(3).Value
cmd.ExecuteNonQuery()
End With
End If
Next
ติดตรงส่วนนี้ค่ะ บันทึกข้อมูลลงตาราง Sale ไม่ได้ค่ะ >>>>>>>>>>>sql = String.Format("Insert into Sale(Sale_id, Sale_date)" & _ " Values('{0}','{1}')", txt_sale_id.Text, DateTimePicker1.Text)
cmd_excuteNonquery()
tr.Commit()
MsgBox("บันทึกข้อมูลเรียบร้อยค่ะ")
Catch ex As Exception
MsgBox(ex.Message)
tr.Rollback()
End Try
Tag : Ms Access, VB.NET
|
ประวัติการแก้ไข 2015-11-23 10:30:15
|
 |
 |
 |
 |
Date :
2015-11-23 10:27:37 |
By :
Finally |
View :
1188 |
Reply :
2 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (VB.NET)
strSQL = "INSERT INTO customer (CustomerID,Name,Email,CountryCode,Budget,Used) " & _
"VALUES (@sCustomerID,@sName,@sEmail,@sCountryCode,@sBudget,@sUsed)"
objCmd = New System.Data.OleDb.OleDbCommand(strSQL,objConn)
With objCmd
.Parameters.Add(New OleDbParameter("@sCustomerID","C005"))
.Parameters.Add(New OleDbParameter("@sName","Weerachai Nukitram"))
.Parameters.Add(New OleDbParameter("@sEmail","[email protected]"))
.Parameters.Add(New OleDbParameter("@sCountryCode","TH"))
.Parameters.Add(New OleDbParameter("@sBudget","2000000"))
.Parameters.Add(New OleDbParameter("@sUsed","1000000"))
End With
น่าจะต้องใส่ @ เข้าไปด้วยครับ หรือไม่ลองดู Error ว่าอะไรครับ 
|
 |
 |
 |
 |
Date :
2015-11-23 11:58:10 |
By :
mr.win |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|