Ich habe ein Skript, das eine SQL-Einfüge- oder Update-Skript abhängig von mehreren Faktoren generiert. Unten ist der String-Wert des Skripts es zu erzeugen:Ausführen mehrerer Abfragen über eine einzige PHP-Funktion mysqli_query
INSERT INTO AAB_EVENT_SHIFTS (EVENT_ID ,SHIFT ,START_TIME ,END_TIME
,CREATE_USER ,CREATE_DATE ,MODIFY_USER ,MODIFY_DATE) VALUES (6 ,1
,STR_TO_DATE('04/01/2016 10:00 am', '%m/%d/%Y %I:%i %p')
,STR_TO_DATE('04/01/2016 11:00 am', '%m/%d/%Y %I:%i %p') ,14 ,now() ,14 ,now()
); INSERT INTO AAB_EVENT_SHIFTS (EVENT_ID ,SHIFT ,START_TIME ,END_TIME ,CREATE_USER ,CREATE_DATE ,MODIFY_USER ,MODIFY_DATE) VALUES (6 ,2 ,STR_TO_DATE('04/01/2016 11:00 am', '%m/%d/%Y %I:%i %p') ,STR_TO_DATE('04/01/2016 12:00 pm', '%m/%d/%Y %I:%i %p') ,14 ,now() ,14 ,now());
INSERT INTO AAB_EVENT_SHIFTS (EVENT_ID ,SHIFT ,START_TIME ,END_TIME ,CREATE_USER ,CREATE_DATE ,MODIFY_USER ,MODIFY_DATE) VALUES (6 ,3
,STR_TO_DATE('04/01/2016 12:00 pm', '%m/%d/%Y %I:%i %p')
,STR_TO_DATE('04/01/2016 1:00 pm', '%m/%d/%Y %I:%i %p') ,14 ,now() ,14 ,now());
Wenn ich laufe, dass es völlig in Ordnung, in einem SQL-Editor mit der Datenbank verbunden läuft und fügt alle Zeilen erwartet. Jedoch wenn Sie anrufen, dass die Abfrage so:
$result = mysqli_query($link,$query);
echo mysqli_error($link);
gibt diese:
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'INSERT INTO AAB_EVENT_SHIFTS (EVENT_ID ,SHIFT ,' at line 24
ich die Art und Weise verändern die Abfrage von erzeugt eine verkettete Zeichenfolge von mehreren Erstellen von Abfragen, um eine Reihe von Abfragen erstellen und sie laufen eins nach dem anderen - das scheint das Problem korrigiert zu haben.
Zeigen Sie, wie Sie Ihre 'query' Variable $ schaffen !! – Saty
Fügen Sie Ihre $ query hinzu oder drucken Sie die Abfrage und führen Sie das gleiche in mysql aus. –