Я хочу знать, как хакер может добавить этот тип кода ("DROP TABLE customer;") в мой оператор вставки
Например:
name = "'); DROP TABLE customer; --"
выдаст это значение в insert :
INSERT INTO customer(name,address,email) VALUES(''); DROP TABLE customer; --"','"+addre+"','"+email+"');
Я специально хочу узнать, как я могу предотвратить это
Использованиеподготовленные операторы и аргументы SQL (пример «украден» из Matt Fellows):
String insert = "INSERT INTO customer(name,address,email) VALUES(?, ?, ?);";
PreparedStament ps = connection.prepareStatment(insert);
Также проанализируйте значения, которые вы имеете в таких переменных, и убедитесь, что они не содержат недопустимых символов (таких как «; "во имя).