提问人:roy 提问时间:8/23/2023 最后编辑:roy 更新时间:8/26/2023 访问量:77
如何在 VB.NET 中使用 dapper 从 datagridview 更新 MS-ACCESS 数据库
how to update MS-ACCESS database from datagridview with dapper in VB.NET
问:
以前我通过将数据表循环到数据库来执行 sql 插入,但现在我想使用 dapper 更新到数据库,请指导我,以便我所采用的方法不会出错,因为稍后此过程将与库存项目数量有关。
谢谢
Public Class Form2
Inherits Form
Dim itrservice As New ItemtransfersService()
Sub New()
InitializeComponent()
End Sub
Public Sub New(item As ItemTransfers)
Me.New
DataGridView1.DataSource = itrservice.GetItemTransfersDetail(item.Invno)
DataGridView1.Columns(1).Visible = False
TextBox1.Text = item.Invno
TextBox2.Text = item.Created
Private Sub BtnUpdate_Click(sender As Object, e As EventArgs) Handles BtnUpdate.Click
If DataGridView1.RowCount = 0 Then
Throw New Exception("Enter Item data item first")
End If
Dim obj = New ItemTransfers With {
.Modified = DateTime.Now
}
itrservice.UpdateItemTransfers(obj)
'For i = 0 To _myTable.Rows.Count - 1
' Dim detail = New ItemTransfersDetail With {
' ' .No = Convert.ToInt32(_myTable.Rows(i)(0)),
' ' .CodeProduct = _myTable.Rows(i)(1).ToString(),
' ' .Barcode = _myTable.Rows(i)(2).ToString(),
' ' .Colorcode = _myTable.Rows(i)(3).ToString(),
' ' .Size = _myTable.Rows(i)(4).ToString(),
' ' .Qty = Convert.ToInt32(_myTable.Rows(i)(5).ToString())
' ' }
' 'itrservice.UpdateItemTransfersdetail(detail)
'Next i
End Sub
End Class
Public Sub UpdateItemTransfers(ByVal Obj As ItemTransfers)
Dim sql = $"UPDATE `Stocksout` Set `Modified`='{Obj.Modified}' WHERE `Invno`='{Obj.Invno}';"
Using _conn = New OleDbConnection(GetOledbConnectionString())
_conn.Execute(sql)
End Using
End Sub
Public Sub UpdateItemTransfersdetail(ByVal Obj As ItemTransfersDetail)
Dim sql = $"UPDATE `Stocksoutdetail` Set `CodeProduct`='{Obj.CodeProduct}',`Barcode`='{Obj.Barcode}',`Colorcode`='{Obj.Colorcode}',`Size`='{Obj.Size}',`Qty`={Obj.Qty} WHERE `Invno`='{Obj.Invno}' and `No`={Obj.No};"
Using _conn = New OleDbConnection(GetOledbConnectionString())
_conn.Execute(sql)
End Using
End Sub
窗体视图 (Form2)
答:
0赞
roy
8/24/2023
#1
这个链接为我的问题提供了一个解决方案,一个链接!
Private Sub BtnUpdate_Click(sender As Object, e As EventArgs) Handles BtnUpdate.Click
If DataGridView1.RowCount = 0 Then
Throw New Exception("Enter Item data item first")
End If
Dim obj = New ItemTransfers With {
.Modified = DateTime.Now,
.Invno = TextBox1.Text
}
itrservice.UpdateItemTransfers(obj)
For Each item As DataGridViewRow In DataGridView1.Rows
Dim detail = New ItemTransfersDetail With {
.CodeProduct = CStr(item.Cells(2).Value),
.Barcode = CStr(item.Cells(3).Value),
.Colorcode = CStr(item.Cells(4).Value),
.Size = CStr(item.Cells(5).Value),
.Qty = Convert.ToInt32(item.Cells(6).Value),
.Invno = TextBox1.Text,
.No = Convert.ToInt32(item.Cells(0).Value)
}
itrservice.UpdateItemTransfersdetail(detail)
Next item
MessageBox.Show("Record Updated Successfully")
End Sub
评论