您好我正在编写一个查询,如果日期正确并且选择了班次员工的用户名,则查找班次。通常一周中每天会有7个标签,但为了让这部分代码工作,我缩小了它,我已经被困了一个小时左右。这是我的代码:
Dim strQuery as String = "SELECT [Time] FROM [ShiftDetails]" +
" WHERE ([Day] = '" & Label2.Text & "' & [Username] = '" & TextBox1.Text & "') " +
"Or ([Day] = '" & Label3.Text & "' & [Username] = '" & cboUser.Text & "')"
myCommand = New OleDbCommand(strQuery, myConnection)
或者这里是彩色语法 http://prntscr.com/5oo6wz
当我做断点时,我看到标签是实际日期,文字是用户名,所以标签/文本框没有任何问题我不认为
答案 0 :(得分:0)
不要使用&对于连接条件,请使用AND
myCommand = New OleDbCommand("SELECT DISTINCT [Time] FROM [ShiftDetails] WHERE ([Day] = '" & Label2.Text & "' AND [Username] = '" & TextBox1.Text & "') Or ([Day] = '" & Label3.Text & "' AND [Username] = '" & cboUser.Text & "')", myConnection)
此外,我希望这是您的测试查询,而不是真正的测试查询,因为它很容易进行SQL注入。