Erreur de syntaxe SQL lors de la création de la table MySQL nommée "order"
Lorsque vous utilisez un script PHP pour créer une table MySQL nommée "order", vous pouvez rencontrer l'erreur : "Erreur de création de table : votre syntaxe SQL a une erreur proche de 'order( order_id INT UNSIGNED NOT NULL AUTO_INCREMENT, user_id ', p . 1 ligne [dupliquer]". Ce problème peut être dû à une erreur de syntaxe dans l'instruction SQL.
Plus précisément, une erreur de syntaxe se produit car le mot réservé « ordre » est utilisé et n'est pas échappé correctement. En SQL, les mots réservés doivent être échappés à l'aide de guillemets (`) pour les distinguer des noms de table ou de colonne.
Pour contourner cette erreur, vous pouvez échapper le mot réservé "order" comme suit :
<code class="language-sql">CREATE TABLE `order` ( order_id INT UNSIGNED NOT NULL AUTO_INCREMENT, user_id INT UNSIGNED NOT NULL, transaction_id VARCHAR(19) NOT NULL, payment_status VARCHAR(15) NOT NULL, payment_amount DECIMAL(6,2) UNSIGNED NOT NULL, payment_date_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (order_id), FOREIGN KEY (user_id) REFERENCES user (user_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;</code>
En faisant cela, MySQL reconnaîtra « order » comme un nom de table valide et la table sera créée avec succès.
Vous pouvez également éviter d'utiliser des mots réservés et utiliser un nom différent pour votre table. Cela permet d’éviter d’éventuelles erreurs de syntaxe à l’avenir.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!