2012-07-28 2 views
0

vb.NET 및 SQL에 새로운 기능입니다. 내 vb.NET 프로그램에서 최신 입력을보고 싶습니다. 나는 그것을 어떻게 할 것이냐? 침대 번호는 자동 증가합니다. 현재 데이터베이스의 변경 사항을 기록하지만 세부 사항을보고 싶을 때는 레이블이 비어 있어야합니다.Select SQL Statement가 최신 사용자 입력을 읽을 수 없습니다.

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 

감사 :

이 내 코드입니다!

+0

먼저 우리에게 정보를 제공 나는 그것을 실행 희망이

위한 하위 쿼리를 사용하여 내 쿼리에서이 작업을 수행합니다 . bednumber = 1 인 행을 보셨습니까? 위 코드를 추적 했습니까? 데이터베이스에 대한 연결이 오류없이 작동 했습니까 (연결을 열고 결과를 테스트해야 함). – NoChance

답변

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은 대략적인 삽입 순서로 데이터베이스에 의해 순차적으로 자동 생성 된 값이있는 숫자 열이라고 가정합니다. 쇼

0

최신 입력, 나는

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 badnumbre=(SELECT MAX(bednumber) from patien)" 

내가 잘 :)

관련 문제