Ich möchte eine Zeile einfügen, aber keine Daten einfügen, die bereits vorhanden sind. Ist es möglich, das unten mit Sprint zu tun? Ich brauche Hilfe mit der Syntax dafür.mysql einfügen - überspringen Duplikate Syntaxfehler - sprintf (WHERE nicht vorhanden)
$insertSQL = sprintf("
INSERT INTO post_view (trade_id, user_id, timestamp)
VALUES (%s, %s, %s)
SELECT trade_id,
user_id,
timestamp
FROM post_view
WHERE NOT EXISTS
(SELECT id
FROM post_view
WHERE trade_id = %s
AND user_id = %s)",
GetSQLValueString($_GET['trade_id'], "int"),
GetSQLValueString($_SESSION['user_id'], "int"),
GetSQLValueString(time(), "int"),
GetSQLValueString($_GET['trade_id'], "int"),
GetSQLValueString($_SESSION['user_id'], "int"));
mysqli_select_db($connection, $database_connection);
$Result = mysqli_query($connection, $insertSQL) or die(mysqli_error($connection));
Derzeit unten Fehler bekommen
Sie haben einen Fehler in Ihrer SQL-Syntax; Sie in der Bedienungsanleitung für die richtige Syntax zu Ihrem MariaDB Server-Version entspricht in der Nähe von 'SELECT trade_id, user_id, Zeitstempel post_view WHERE NOT' zu verwenden, in Zeile 3
Sollten Sie nach Ihrer Insert-Anweisung ein Semikolon werfen? –