Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да вмъкна няколко записа в едно пътуване до база данни, използвайки PDO?

Можете да дадете на заместителите каквито имена искате, така че нещо подобно за вашия SQL:

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

И след това:

$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);

Или, разбира се, изградете подходящия масив за execute . В този случай обаче може да е по-лесно да се работи с неименувани заместители:

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

След това можете да прегледате вашите стойности и да извикате execute със съответния масив:

$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. търсене от множество таблици с помощта на една ключова дума в mysql

  2. Код за конфигурация на CodeIgniter и поддръжка на UTF-8

  3. REPLACE в MySQL, независимо от главните букви?

  4. Как да се свържа с MySQL база данни от приложение за Android?

  5. Как да показвам редовете като колони в MySQL?