본문 바로가기
MySql

MySQL VB.NET and MySql UPDATE query

by 베이스 공부 2021. 1. 22.
반응형

여기에 오류없이 내 코드가 있습니다 (적어도 디버그 할 때가 아니라 VS 2010 를 사용합니다). 내가 원하는 것은 추가 버튼을 클릭 할 때 발생합니다. textbox (txtQty)는 현재 "수량"열에 저장된 숫자에 추가됩니다. (예 : txtQty "100"이고 열의 전류는 "200"입니다. 텍스트 상자의 "100"을 "200"이있는 열에 추가하고 새 숫자 "300"으로 저장하고 싶습니다. 내가 아는 간단한 수학) ,하지만 문제는 VB.NET Datagridview 또는 MySql Database 에서 수학 방정식을 사용하는 방법을 아직 알지 못했다는 것입니다.이 코드는 실행되지만 열에있는 숫자 추가를 클릭하여 0으로 돌아갑니다. 모든 힌트 또는 팁을 주시면 감사하겠습니다.

        cmd.Connection = conn

        Dim Result = "Quantity" + txtQty.Text

        cmd.CommandText = " UPDATE incomingdeliveries SET Quantity ='" & Result & "';"
        cmd.Parameters.Add(New MySqlParameter("@Quantity", txtQty.Text))

        cmd.ExecuteNonQuery()

        MsgBox("Data Added to the Database")

            Me.IncomingdeliveriesTableAdapter.Dispose()
        Me.IncomingdeliveriesTableAdapter.Fill(Me.IncomingDeliveriesDataSet.incomingdeliveries)

            lblCode.Text = ("Tables Refreshed!")

 

해결 방법

 

명령 텍스트도 매개 변수화해야합니다.

cmd.CommandText = " UPDATE incomingdeliveries SET Quantity = @iQuantity + Quantity"
cmd.Parameters.Add(New MySqlParameter("@iQuantity", txtQty.Text))

업데이트 1

Using _conn As New MySqlConnection("connectionStr here")
    Using _comm As New MySqlCommand()
        With _comm
            .Connection = _conn
            .CommandText = "UPDATE incomingdeliveries SET Quantity = @iQuantity + Quantity"
            .CommandType = CommandType.Text
            .Parameters.AddWithValue("@iQuantity", txtQty.Text)
        End With
        Try
            _conn.Open()
            _comm.ExecuteNonQuery()
        Catch ex As MySqlException
            Msgbox(ex.Message.ToString())
        End Try
    End Using
End Using

 

참조 페이지 https://stackoverflow.com/questions/13133068

 

 

반응형

댓글