Có, hãy sử dụng các câu lệnh đã chuẩn bị sẵn cho mọi thứ.
-
Chúng được phân tích cú pháp một lần.
-
Chúng miễn nhiễm với các cuộc tấn công chèn SQL.
-
Chúng là một thiết kế tốt hơn vì bạn phải nghĩ về SQL của mình và cách nó được sử dụng.
Nếu bạn nghĩ rằng chúng chỉ được sử dụng một lần, bạn không nhìn vào bức tranh toàn cảnh. Một ngày nào đó, dữ liệu của bạn hoặc ứng dụng của bạn sẽ thay đổi.
Chỉnh sửa.
Tại sao các câu lệnh chuẩn bị sẵn khiến bạn nghĩ về SQL của mình?
-
Khi bạn tập hợp một chuỗi (hoặc đơn giản là thực thi một khối văn bản theo nghĩa đen), bạn sẽ không tạo một
PreparedStatement
mới vật. Bạn chỉ đang thực thi SQL - nó có thể được thực hiện rất tình cờ. -
Khi bạn phải tạo (và lưu) một
PreparedStatement
, bạn phải nghĩ thêm một chút về việc đóng gói, phân bổ trách nhiệm. Việc chuẩn bị một câu lệnh là một sự kiện trạng thái trước khi thực hiện bất kỳ quá trình xử lý SQL nào.
Việc làm thêm tuy nhỏ nhưng không đáng kể. Đó là lý do khiến mọi người bắt đầu nghĩ về ORM và lớp bộ nhớ đệm dữ liệu và những thứ tương tự như vậy để tối ưu hóa quyền truy cập cơ sở dữ liệu của họ.
Với câu lệnh Chuẩn bị, việc truy cập cơ sở dữ liệu ít ngẫu nhiên hơn, có chủ đích hơn.