我正在建立一个允许学生助理登录系统的图书馆系统。我有一个学生信息表来提取学生助理的信息,而不是将相同的信息放在学生助理帐户表中,因为这有点过于冗余。
sqlSearch = "select * from tblSALogin where SA_ID = '" & txtUserName.Text & _
"' inner join tblStudentInfo on tblSALogin.StudentID = tblStudentInfo.StudentID"
我正在使用上面的SQL查询表达式来做到这一点,但它让我错过了操作符错误,我不知道为什么。表达式的语法是正确的,表达式所需的所有表都已经相关并且具有所需的记录。
答案 0 :(得分:2)
您需要将where
放在join
:
sqlSearch = _
"select * from tblSALogin " & _
"inner join tblStudentInfo on tblSALogin.StudentID=tblStudentInfo.StudentID " & _
"where SA_ID = '" & txtUserName.Text & "'"
另请注意,使用此查询您很容易受SQL injection攻击,您应该查看使用参数化查询。
答案 1 :(得分:0)
连接应该在FROM
子句中,而不在WHERE
子句
答案 2 :(得分:0)
尝试这样
sqlSearch = "select tblSALogin.*,tblStudentInfo.* from tblSALogin inner join tblStudentInfo on tblSALogin.StudentID = tblStudentInfo.StudentID where SA_ID = '" & txtUserName.Text &"' "
在Join之后应该出现Where子句。