0

私はvb.NETとSQLを初めて使用します。vb.NETプログラムの最新の入力を表示したい。どうすればいいですか?ベッド番号は自動インクリメントです。現在、これはデータベースの変更を記録しますが、詳細を表示したい場合、ラベルは空のままです。

これは私のコードです:

 Dim SQLStatement As String = "SELECT name, age, date_of_confinement,type_of_sickness, " _
                              "type_of_IV_fluid, number_of_bottles, drop_rate " _
                              "FROM patient WHERE bednumber=1"

    Dim cmd As MySqlCommand = New MySqlCommand

    With cmd
        .CommandText = SQLStatement
        .CommandType = CommandType.Text
        .Connection = SQLConnection
        .ExecuteNonQuery()

        '--read the records in database in phpmyadmin gui---
        Dim myReader As MySqlDataReader = cmd.ExecuteReader
        If myReader.Read Then
            ViewInfo.lblName.Text = myReader.GetString(0)
            ViewInfo.lblAge.Text = myReader.GetString(1)
            ViewInfo.lblDate.Text = myReader.GetString(2)
            ViewInfo.lblSickness.Text = myReader.GetString(3)
            ViewInfo.lblFluid.Text = myReader.GetString(4)
            ViewInfo.lblBottle.Text = myReader.GetString(5)
            ViewInfo.lblDrop.Text = myReader.GetString(6)

            myReader.Close()
        End If
    End With

ありがとう!

4

2 に答える 2

1

この方法で SQL ステートメントを変更してみてください。

 Dim SQLStatement As String = "SELECT TOP 1 name, age, date_of_confinement,type_of_sickness, " _ 
                              "type_of_IV_fluid, number_of_bottles, drop_rate " _ 
                              "FROM patient ORDER BY bedumber DESC" 

これにより、患者テーブルbednumberが降順で並べ替えられ (したがって、最後に挿入されたレコードが一番上になります)、この最初のレコード (TOP 1) が取得されます。

もちろん、これbednumberはデータベースによって挿入の大まかな順序で順次自動生成された値を持つ数値列であると思います。

于 2012-07-28T22:52:35.207 に答える