2017-03-18 3 views
0

나는 내 데이터베이스에서 찾을 수 있도록 텍스트 상자에 삽입 된 값을 얻는 방법을 연구했습니다. 그래서 나는 결과로 끝날 수 있습니다. 내 텍스트 상자에 무엇인지에 따라, 그 상태 데이터베이스에서 찾아 내 Roomnumber 원하는케이스 선택, 올바른 형식은 무엇입니까

myConnection.Open() 
Dim cmd As New OleDbCommand("Select [Roomnumber] = '" & textboxt1.text & "' ,[Status] FROM [rooms]", myConnection) 
Dim dt As New DataTable 
dt.Load(cmd.ExecuteReader) 

For Each row As DataRow In dt.Rows 

    Select Case row("Roomnumber").ToString() 

     Case "textbox1.text" 
      Select Case row("Status").ToString().ToLower() 

       Case "available" 
        Msgbox("hello") 

       Case "occupied" 
        Msgbox ("hi") 

       Case "reserved" 
        Msgbox ("input code") 

      End Select 
    End Select 
Next 
myConnection.Close() 

End Sub 

:

(Table name = rooms) 
(Table contents = Roomnumber,Status,Roomtype) 
(Roomnumber = 201,202,203) 
(Status= Available,Occupied,Reserved) 

여기 내 코드입니다. 내가 "textbox.text"나는 해결책을 가지고

+0

"SQL로 시작하기"또는 이와 유사한 자습서. – Gustav

답변

0

을 어디다 내 오류가 난 여기

는 올바른 코드 내 "cmd를"의 형식을 변경할 수 있습니다 :

myConnection.Open() 
Dim cmd As New OleDbCommand("Select [Roomnumber] ,[Status] FROM [rooms] WHERE Roomnumber = " & textbox1.text & "", myConnection) 
Dim dt As New DataTable 
dt.Load(cmd.ExecuteReader) 

For Each row As DataRow In dt.Rows 

Select Case row("Roomnumber").ToString() 

    Case "textbox1.text" 
     Select Case row("Status").ToString().ToLower() 

      Case "available" 
       Msgbox("hello") 

      Case "occupied" 
       Msgbox ("hi") 

      Case "reserved" 
       Msgbox ("input code") 

     End Select 
End Select 
Next 
    myConnection.Close() 

End Sub 
당신은 공부로 시작해야