Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

mysqli:nó có thể chuẩn bị nhiều truy vấn trong một câu lệnh không?

Một câu lệnh đã chuẩn bị chỉ có thể thực hiện một truy vấn MySQL. Bạn có thể chuẩn bị bao nhiêu câu lệnh tùy ý trong các biến khác nhau:

$stmtUser = $sql->prepare("INSERT INTO user (id_user, username, pw, email) VALUES (?,?,?,?)");
$stmtProc = $sql->prepare("INSERT INTO process (id_user, idp) VALUES (?,?);");

Và sau đó thực hiện chúng sau. Nếu bạn muốn đảm bảo rằng cả hai đều không chạy trừ khi cả hai đều có thể chạy, thì bạn cần phải xem xét các giao dịch, như Thomas đã nói.

Ngoài ra, một mẹo chung:"lệnh gọi hàm thành viên trên một đối tượng không phải" là lỗi chuẩn mà bạn gặp phải khi prepare() không thành công và vì vậy $stmt thực ra không phải là một đối tượng câu lệnh được chuẩn bị sẵn. Điều đó thường có nghĩa là bạn cần tìm lỗi trong prepare() của mình tuyên bố hơn là bất cứ điều gì sau đó.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sự khác biệt giữa utf8_general_ci và utf8_unicode_ci là gì?

  2. Lỗi MySQL 1449:Người dùng được chỉ định làm trình xác định không tồn tại

  3. Cài đặt MySQL trên CentOS 7

  4. Lấy tất cả các hàng cha trong một truy vấn SQL

  5. jQuery UI Sortable, sau đó ghi thứ tự vào cơ sở dữ liệu