0

次の WHERE ステートメントを手伝ってくれる人はいますか? bn を WHERE 文の参照にしたい。

これは私のコードの内容です:

Public bn As String = ""  

Dim SQLStatement As String = "UPDATE patient SET number_of_bottles='" & lblBottle.Text & "'  WHERE bednumber=bn ORDER BY patient_ID DESC LIMIT 1"

プログラム中、bn は、アクセスするベッド番号を知るための識別子です。

どんな助けでも感謝します!

4

1 に答える 1

0

(一般的な ODBC ではなく、MySQL 固有のオブジェクトを使用するように編集されています)

    Dim bn As String = ""       ' Set this to some value in your code
    Dim bottles As Integer = 0  ' Set this to some value in your code
    Dim SQLStatement As String = "UPDATE patient SET number_of_bottles = @bottles WHERE bednumber = @bednumber"

    Using cnn As New MySqlConnection("Connection string here")
        Dim cmd As New MySqlCommand(SQLStatement, cnn)
        cmd.Parameters.AddWithValue("bottles", bottles)
        cmd.Parameters.AddWithValue("bednumber", bn)
        cnn.Open()
        cmd.ExecuteNonQuery()
        cnn.Close()
    End Using

手動でオブジェクトを作成する代替バージョンMySqlParameter-- パラメータ オブジェクトを作成し、それらの値を設定してから、MySqlCommandオブジェクトのパラメータ コレクションに追加する必要があることに注意してください。

Using cnn As New MySqlConnection("Connection string here")
    Dim cmd As New MySqlCommand(SQLStatement, cnn)
    Dim pBottles As New MySqlParameter("bottles", bottles)
    Dim pBedNumber As New MySqlParameter("bednumber", bn)
    cmd.Parameters.Add(pBottles)
    cmd.Parameters.Add(pBedNumber)
    cnn.Open()
    cmd.ExecuteNonQuery()
    cnn.Close()
End Using
于 2012-08-13T16:56:54.070 に答える