Bản chất của các truy vấn bảng thay đổi, với kiến thức của tôi không phải là các báo cáo được chuẩn bị. Nhưng bạn nên gọi các hàm beginTransaction
và commit()
cho hầu hết các truy vấn thay đổi bảng.
$dbh->beginTransaction();
/* Change the database schema and data */
$sth = $dbh->exec("DROP TABLE fruit");
$sth = $dbh->exec("UPDATE dessert
SET name = 'hamburger'");
$sth = $dbh->exec("ALTER TABLE `dessert` ADD `field1` VARCHAR(24) NOT NULL");
/* Commit changes */
$dbh->commit();
Mặc dù bạn có thể sử dụng các số liệu đã chuẩn bị và thực hiện theo như tôi biết.
LƯU Ý:
MySQL ngầm gọi hàm cam kết() trên CREATE TABLE
và DROP TABLE
truy vấn, vì vậy rollback là không thể.
Ngoài ra, nếu bạn muốn chuyển các biến cho truy vấn bảng thay đổi, hãy đảm bảo vệ sinh đầu vào của người dùng (nếu đó là nơi nó đến) và tạo một thủ tục được lưu trữ trên db của bạn, sau đó gọi nó bằng PDO và đính kèm các biến của bạn cho inout. Chỉ là một suy nghĩ liên quan đến câu hỏi của bạn được diễn đạt như thế nào.
vì không thành công, không thể thực hiện được. – hjpotter92
@ TheJumpingFrog vì tôi đã hỏi nhiều câu hỏi về tràn ngăn xếp đã thất bại trong kiểm tra, mỗi một trong số chúng đã được trả lời. – cgwebprojects