我的RFID登录系统项目存在问题,如果我只查询一个表(学生),它会正确显示数据,但我们的系统不仅包括学生的登录,还包括教职员工的登录,但是我把这个查询
With cmd
.Connection = cn
.CommandText = "SELECT Firstname,IDnum FROM Students,Faculty WHERE RFID = '" & TextBox1.Text & "'"
End With
它应该显示数据等于rfid,如果它等于学生表或教师,我不知道下一步该怎么办请帮助
答案 0 :(得分:0)
您需要在where子句中指定表和列。看起来RFID
列对于两个表中的一个是唯一的。
以下是一个示例(假设RFID
属于students
表):
With cmd
.Connection = cn
.CommandText = "SELECT Firstname,IDnum FROM Students s,Faculty f WHERE '" & TextBox1.Text & "' in (f.<RFID Column Name>, s.RFID)"
End With
另一种方法是将表中的搜索结合起来:
With cmd
.Connection = cn
.CommandText = _
"SELECT Firstname,IDnum FROM Students s " + _
"WHERE '" & TextBox1.Text & "' = s.RFID " & _
"UNION " + _
"SELECT Firstname,IDnum FROM faculty f " + _
"WHERE '" & TextBox1.Text & "' = f.RFID "
End With