У меня есть сообщение об ошибкеSQL-запрос с пользовательским вводом
java.sql.SQLException: ORA-00933: SQL команда не правильно закончилась
, когда я пытаюсь выполнить следующую инструкцию SQL.
В этом заявлении предполагается отобразить все данные о аренде и обратную связь для конкретного клиента при поиске имени клиента. «запрос» относится к пользовательскому вводу, когда пользователь выполняет поиск имени (CustomerName) в базе данных.
SELECT c.CustomerName, r.Rental_ID, r.Staff_ID, r.RentalDate, r.DueDate,
r.Customer_ID, f.Description
FROM Rental r, Customer c, FeedBack f
WHERE f.Customer_ID = r.Customer_ID
AND c.Customer_ID = f.Customer_ID
ORDER BY DueDate
WHERE CustomerName like "+ query +";
Что пошло не так?
я надеюсь, что вы буквально не прилагая при условии имени пользователя в запрос и вместо того, чтобы с помощью 'PreparedStatements' таким образом, чтобы избежать вопиющей инъекции SQL уязвимости. – jtahlborn
@ E. На вашем ORDER BY должно появиться после того, как предложение изменит эти места и проверит .. –
Хм, да, у меня есть подготовленное заявление, просто не включенное в мой вопрос. Ха-ха. xD А, я вижу, сделаю это и попробую. Благодарю. :) –