2011-02-02 37 views

Trả lời

7

số

mysqli::multi_query mất một chuỗi truy vấn như là đối số của nó, không phải là một tuyên bố chuẩn bị.

mysql::prepare chỉ có thể chuẩn bị một tuyên bố duy nhất:

Truy vấn phải bao gồm một câu lệnh SQL duy nhất.

+0

Tôi có một câu hỏi. Nếu một câu lệnh chuẩn bị là cách tốt nhất để tránh SQL Injection, bạn sẽ thực hiện nhiều INSERTS như thế nào trên nhiều bảng, duy trì lợi ích của các câu lệnh đã chuẩn bị? Bạn có thể phá vỡ từng câu lệnh SQL thành các câu lệnh được chuẩn bị đơn lẻ và chỉ xếp chúng vào cơ sở dữ liệu hoặc có một giải pháp một lần không? Tôi chỉ cần một số thuật ngữ hoặc biểu thức tôi có thể google và tìm hiểu về. –

+1

@FernandoSilva: Tôi sử dụng giao dịch cho việc này - xem [câu trả lời này] (http://stackoverflow.com/a/11635064/1801588) cho vấn đề cụ thể này và [câu hỏi này và câu trả lời của nó] (http://stackoverflow.com/q/12091971/1801588) (không chỉ là cái đầu tiên) cho giao dịch. –

+0

@PavelV. Cảm ơn, chỉ cần đọc về những gì bạn đã đề cập, điều đó sẽ giúp tôi. Cuối cùng tôi đã đột nhập vào các giao dịch mà không hề biết đó là những gì nó được gọi. Cảm ơn một lần nữa ^^ –

Các vấn đề liên quan