2015-02-10 18 views
0

有人可以幫助我嗎? 我有兩個組合框,cboSearchby(持有該項目1st sem2nd sem)和cboSY(持有該項目2014-20152015-2016在vb.net中過濾已過濾的結果

conn = New OleDbConnection(Get_Constring) 
conn.Open() 
cmd.Connection = conn 
cmd.CommandType = CommandType.Text 
sSQL = "SELECT edp_number, LastName + ', ' + FirstName as name, course as course, Address as address, syear as syear, Sem as sem FROM tblStudent" 
If Me.cboSearchBy.Text = "1st" And Me.cboSY.Text = "2014-2015" Then 
    sSQL = sSQL & " where Sem like '1st" & Me.txtSearch.Text & "%' and syear like '2014-2015" & Me.cboSY.Text & "%' " 
Else 
    sSQL = sSQL & " where Sem like '2nd" & Me.txtSearch.Text & "%' and syear like '" & Me.cboSY.Text & "%' " 
End If 

現在發生的事情是,當我選擇SY 2015-2016和選擇1st sem,這完全沒有記錄,但它仍然顯示SY 2015-2016的記錄爲2nd sem,因爲它對應於SY 2015-2016,儘管它們是2nd sem的記錄,我選擇了1st sem

所以我想知道的是如何讓結果只適用於特定的SY和相應的學期選擇第一或第二。

回答

0

在你的代碼中放置一個斷點,然後調試頁面。當您點擊斷點時,請在監視窗口中查看cmd.text,cboSY.Text和cboSearchBy.text的值。

如果問題出在你的sql上,或者如果問題在別處,你應該在查看cmd.text的內容後知道。

檢查你的組合框傳遞的值,以確保你得到控制選項的值

Me.cboSY.selecteditem.tostring() 
+0

非常感謝你的回覆,先生,但我只是一個初學者編程,我不明白你上面的說明。你能說清楚我的先生嗎? – user3459793 2015-02-10 17:15:35

+0

假設你在Visual Studio中工作,只是谷歌「在Visual Studio中調試」。你會一遍又一遍地使用你學到的東西。然後在if語句中更改使用comobox的選定項屬性。 Me.cboSearchBy.Text變成Me.cboSearchBy.SelectedItem.ToString()和Me.cboSySearch.text變成Me.cboSySearch.SelectedItem.tostring() – 2015-02-11 19:03:53

+0

非常感謝你的先生!問題已經解決,但我仍然接受你的名譽的答案:) – user3459793 2015-02-12 00:57:07