Mysql
 sql >> Datenbank >  >> RDS >> Mysql

mehrere EINFÜGE und Aufrechterhaltung der PDO-vorbereiteten Anweisungssicherheit

Lassen Sie mich Ihnen zunächst diesen konstanten Wert versichern ist absolut sicher. So können Sie die Anzahl der gebundenen Parameter in Ihrem Code drastisch reduzieren

INSERT INTO inbox(folder_id, sender_id, sender_type, receiver_id, 
   receiver_type, title, message_body, dt, flag, spam) 
   VALUES (0, 0, 'x', ?, ?, ?, ?, NOW(), 'n', '')");

Ich habe auch zwei Felder date kombiniert und time in ein dt , da es keinen Grund gibt, sie zu trennen, aber es uns erlaubt, kürzeren Code zu verwenden.

Und jetzt können Sie zum nächsten Schritt übergehen – mit INSERT .. SELECT Ansatz

INSERT INTO inbox(folder_id, sender_id, sender_type, receiver_id, 
   receiver_type, title, message_body, dt, flag, spam) 
   SELECT 0, 0, 'x', id, ?, ?, ?, NOW(), 'n', ''
   FROM mya_users ORDER by artist_real_address ASC

und binden Sie Ihre Daten an nur drei verbleibende Variablen!