0

これは、最大 JO_NO を選択するための私のコードです。

strQ = "SELECT MAX(JO_NO) + 1 from js_hdr"

    cmd = New MySqlCommand(strQ, con)
    Try
        con.Open()
        rs = cmd.ExecuteReader
        While rs.Read

           txtJO.Text = IIf(Not IsDBNull(rs.Item("JO_NO")), rs.Item("JO_NO"), 0)

        End While
        rs.Close()

    Catch ex As Exception
        MsgBox(ex.Message)
    Finally
        con.Close()
    End Try

このコードのエラーは次のとおりです:指定された列が結果に見つかりませんでした: JO_NO

テーブルを確認したところ、列 JO_NO があります。

どんな助けでも大歓迎です。

4

1 に答える 1

1

計算列にエイリアスを設定していないため、列が見つかりません。

strQ = "SELECT MAX(JO_NO) + 1 AS JO_NO from js_hdr"

レコードがまだない場合にクエリを使用して値をゼロに設定する場合は、次を使用できますCOALESCE

strQ = "SELECT COALESCE(MAX(JO_NO), 0) + 1 AS JO_NO from js_hdr"
// other codes 
txtJO.Text = rs.Item("JO_NO")
于 2013-08-28T00:58:08.600 に答える