2010-12-12 68 views
0

Ceci est l'erreur que je reçois 1064 - Vous avez une erreur dans votre syntaxe SQL; consultez le manuel qui correspond à votre version du serveur MySQL pour la bonne syntaxe à utiliser près de ': i: sa), rec_type =' ', rec_request =' 1 ', rec_by =' Victoria ', batch_id = UC' à la ligne 1Erreur d'insertion SQL Syntaxe SQL ... date()

aussi je suis conscient que j'ai besoin de s'échapper avant de l'insérer. Je ne fais que tester maintenant.

$importwav="INSERT into names SET 
com_id = '".$word_id."', 
rec_date = date(d-M-y), 
rec_time = date(h:i:s a), 
rec_type = '".$rec_type."', 
rec_request = '1', 
rec_by = '".$data[8]."', 
batch_id = UCASE('".$batchid."') 
"; 


    INSERT into names SET com_id = '87', rec_date = date(d-M-y), 
rec_time = date(h:i:s a), rec_type = '', rec_request = '1', 
rec_by = 'Victoria', batch_id = UCASE('Batch004AM') 
+0

rec jour ** pourrait être le format Y-m-d ** –

+0

faire seul champ '' rec_date' de DateTime' type et définir à la fois date et l'heure à la fois avec 'rec_date = localtime'. –

+1

ne soyez pas un imbécile, utilisez le format de date approprié –

Répondre

3

Vous confondez vos fonctions PHP et vos fonctions MySQL.

$importwav="INSERT into names SET 
com_id = '".$word_id."', 
rec_date = '" . date('d-M-y') . "', 
rec_time = '" . date('h:i:s a') . "', 
... 

Et votre syntaxe SQL est FUBAR.

+0

Hmmm ... Inacio dit que votre syntaxe SQL est FUBAR et obtient 3 votes. Je dis que votre syntaxe SQL est incorrecte et obtenir un vote négatif. Oh bien .. –

+0

@Brian il a tort avec cette remarque et le reste de la réponse est d'accord (sauf pour ne pas mentionner le format de données boiteux). Tandis que votre réponse ne sert à rien et, comme l'op mentionné dans le commentaire, utilisé littéralement, ne peut pas résoudre le problème. Parce que son pTOblem est différent. Écrivez simplement vos réponses sur le sujet pour obtenir des upvotes. C'est sacrément facile. –

-1

date() arguments doivent être une chaîne. Essayez d'entourer vos chaînes de format de date avec des guillemets simples (').

0

Syntaxe SQL incorrecte.

INSERT INTO table (col1, col2) VALUES (val1, val2) 
+0

J'ai l'habitude de le faire de cette façon, mais cela crée beaucoup de confusion lorsqu'on insère beaucoup d'entrées de champs. – acctman