Да, използвайте подготвени изявления за всичко.
-
Те се анализират веднъж.
-
Те са имунизирани срещу атаки с инжектиране на SQL.
-
Те са по-добър дизайн, защото трябва да помислите за вашия SQL и как се използва.
Ако смятате, че се използват само веднъж, не гледате голямата картина. Някой ден вашите данни или приложението ви ще се променят.
Редактиране.
Защо подготвените изявления ви карат да мислите за вашия SQL?
-
Когато сглобявате низ (или просто изпълнявате буквален блок от текст), вие не създавате нов
PreparedStatement
обект. Вие просто изпълнявате SQL - това може да се направи много небрежно. -
Когато трябва да създадете (и запишете)
PreparedStatement
, трябва да помислите малко повече за капсулирането, разпределението на отговорността. Подготовката на изявление е събитие за състояние преди извършване на каквато и да е SQL обработка.
Допълнителната работа е малка, но не и незначителна. Това кара хората да започнат да мислят за ORM и слой за кеширане на данни и подобни неща, за да оптимизират достъпа си до базата данни.
С Prepared оператори достъпът до базата данни е по-малко случаен, по-преднамерен.