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

Làm cách nào để Chèn nhiều bản ghi trong một lần truy cập cơ sở dữ liệu bằng cách sử dụng PDO?

Bạn có thể cung cấp cho các trình giữ chỗ bất kỳ tên nào bạn muốn, tương tự như thế này cho SQL của bạn:

INSERT INTO propAmenities 
(amenity_id, property_id) 
VALUES 
(:amenity_id1, :property_id1), 
(:amenity_id2, :property_id2), 
(:amenity_id3, :property_id3)

Và sau đó:

$stmt->bindParam(':amenity_id1',  1);
$stmt->bindParam(':property_id1', 1);
$stmt->bindParam(':amenity_id2',  2);
$stmt->bindParam(':property_id2', 1);
$stmt->bindParam(':amenity_id3',  3);
$stmt->bindParam(':property_id3', 1);

Hoặc, tất nhiên, xây dựng mảng thích hợp để execute . Trong trường hợp này, các trình giữ chỗ không có tên có thể dễ dàng làm việc hơn:

INSERT INTO propAmenities 
(amenity_id, property_id) 
VALUES 
(?, ?),
(?, ?),
(?, ?)

Và sau đó, bạn có thể lặp lại các giá trị của mình và gọi execute với mảng thích hợp:

$stmt->execute(array(1, 1, 2, 1, 3, 1));


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để thất bại hoặc gặp sự cố các phiên bản MySQL của bạn để kiểm tra

  2. Sử dụng select vào biến cục bộ và câu lệnh chuẩn bị sẵn trong mysql

  3. Làm thế nào để chuyển một danh sách các ID vào thủ tục lưu trữ MySQL?

  4. Khối lượng công việc kết hợp cơ sở dữ liệu OLTP / Analytics:Sao chép dữ liệu MySQL sang ClickHouse

  5. MySQL cung cấp số lượng hàng dao động khi tôi truy vấn lược đồ?