2016-11-10 1 views
0

Ich bekomme diesen Syntaxfehler in meinem MySQL-Code innerhalb einer PHP-Datei. Ich versuche einfach, den Wert in der Tabelle mit dieser Zeitvariable zu erhöhen/zu erhöhen. Wenn mir jemand helfen könnte, würde ich es sehr schätzen.SQL Syntax Fehler im PHP-Code - zwei Werte addiert

PHP:

$sql = "UPDATE Aircraft 
SET MaintenanceFlightTime = (MaintenanceFlightTime + $MaintenanceDuration), 
WHERE AircraftID = $AircraftID"; 

Fehler:

UPDATE Aircraft SET MaintenanceFlightTime = (MaintenanceFlightTime + 00:10:00), WHERE AircraftID = 8 
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 ':10:00), WHERE AircraftID = 8' at line 2 
+0

Ok, welcher Datentyp ist die 'MaintenanceFlightTime'-Spalte – RiggsFolly

+0

Das + wird nicht funktionieren, es sei denn, das sind beide Zahlen. Sie sind wahrscheinlich besser dran, die Mathematik zuerst, dann senden Sie das Ergebnis über die UPDATE. – durbnpoisn

+1

Löschen Sie einfach das zusätzliche Komma '), WHERE' – Hackerman

Antwort

0

Sie können nicht nur eine Zeichenfolge hinzufügen, wie '01: 01: 01' zu einer Zeitspalte, aber Sie verwenden können ADDTIME()

$MaintenanceDuration = '00:10:00'; 

$sql = "UPDATE Aircraft 
     SET MaintenanceFlightTime = ADDTIME(MaintenanceFlightTime, '$MaintenanceDuration') 
     WHERE AircraftID = $AircraftID"; 
+0

Perfekt danke! –