Я работаю с asp.NET и C# с базой данных доступа для создания веб-приложения.Ошибка синтаксиса (отсутствующий оператор) в запросе с предложением в скобках FROM
Моя текущая проблема связана с оператором SQL. В проекте я уже успешно использовал строковое значение для создания и хранения запроса. Поскольку он хранится в строке, это немного уродливо смотреть. Проблема заключается в последнем запросе, который я пишу. В нем есть 2 внутренних объединения, и я не уверен, что именно не так. Ошибка, которую я получаю, является синтаксической ошибкой (отсутствующим оператором), а затем перечисляет все внутри скобки. Вот запрос:
SELECT Employee.[First Name], Employee.[Last Name], Employee.[Email],
Departments.[Department]
FROM (
Employee INNER JOIN EmpDept ON Employee.[EmpUserName] = EmpDept.[EmpUserName]
INNER JOIN Departments ON Departments.[Department Number] = '2'
)
WHERE Departments.[Campus]='Clarion';
Это очень некрасиво, как это, я знаю .. Im надеясь, что так как это ошибка синтаксиса он не будет слишком сложно.
Этот запрос предназначен для возврата имени, электронной почты и отдела сотрудника. 2 задается с кодом C# и определяется ранее в коде, но это означает определенный отдел. Таблица empDept находится между таблицей отделов и таблицей сотрудников, поэтому сотрудник может находиться в нескольких отделениях.
Любая помощь очень ценится. Спасибо
'2 задан с кодом C#. Как вы сформулировали это, это звучит так, как будто у вас есть вулканизация в sql. Это ** не ** нормально, и закрытие этого отверстия должно быть приоритетом номер 1. –
У меня есть строка в коде за страницей asp, и я заполняю ее запросом. 2 - переменная, которую я вставляю в строку. Я не знаю, является ли ее уязвимым или нет. Ничто не проходит через URL-адрес, а все сохранено в сеансе. – Tinkan
Это ** крайне ** уязвимо, а не совсем правильный способ сделать это. Посмотрите на что-то, называемое параметризованными запросами. –