2014-01-10 5 views
0

Я создаю библиотечную систему, которая позволяет студентам-помощникам войти в систему. У меня есть таблица для информации о студентах, чтобы извлекать информацию об ассистентах ученика вместо того, чтобы помещать ту же самую информацию в таблицу счетов помощников учеников, потому что это было бы слишком избыточно.SQL inner join Синтаксическая ошибка (отсутствующий оператор) в выражении запроса

sqlSearch = "select * from tblSALogin where SA_ID = '" & txtUserName.Text & _ 
"' inner join tblStudentInfo on tblSALogin.StudentID = tblStudentInfo.StudentID" 

Я использую выше выражение SQL запросов, чтобы сделать это, но это дает мне недостающие ошибки оператора и я не знаю почему. Синтаксис выражения правильный, и все таблицы, необходимые для выражения, уже связаны и имеют необходимые записи.

ответ

2

Вы должны поместить where после join:

sqlSearch = _ 
"select * from tblSALogin " & _ 
"inner join tblStudentInfo on tblSALogin.StudentID=tblStudentInfo.StudentID " & _ 
"where SA_ID = '" & txtUserName.Text & "'" 

Также обратите внимание, что вы уязвимы для SQL injection с этим запросом, и вы должны изучить с помощью параметризованных запросов.

0

объединение должно быть в предложении FROM, не в WHERE пункте

0

Попробуйте Как это

sqlSearch = "select tblSALogin.*,tblStudentInfo.* from tblSALogin inner join tblStudentInfo on tblSALogin.StudentID = tblStudentInfo.StudentID where SA_ID = '" & txtUserName.Text &"' " 

Где положение должно быть прийти после регистрации.

Смежные вопросы