2013-05-20 5 views
2

J'insertion d'un enregistrement avec cette commande SQLSQL INSERT INTO erreur

INSERT INTO déploiement (DateTime, type, marque, modèle, SerialNo, affectation) VALUES ('20 mai 2013', » ORDINATEUR PORTABLE ',' ASUS ',' K55V ',' ABCD1234 ',' 10F HRD ');

Mais une erreur surgit en disant

Erreur de syntaxe dans INSERT INTO

DateTime est un type de texte. Que devrais-je faire?

+0

Votre syntaxe semble correcte. Vérifiez que tous vos types sont corrects. Certaines de ces chaînes sont-elles trop longues pour leurs colonnes? –

+0

Toutes les colonnes sont des chaînes et sont limitées à 50 caractères. Bien que, je voudrais changer le DateTime en type DateTime réel. J'essaie d'insérer ce code sur C#, mais cette erreur apparaît toujours. Je pensais que le type DateTime pourrait être le problème. –

Répondre

4

Je pense que cette erreur peut se produire si vous essayez d'utiliser des mots réservés dans la requête (comme indiqué here). Essayez d'envelopper la colonne DateTime entre parenthèses:

INSERT INTO Deployment ([DateTime], Type, Brand, Model, SerialNo, Assignment) VALUES ('May 20, 2013','LAPTOP','ASUS','K55V','ABCD1234','10F HRD'); 

probablement une meilleure solution est de changer ce nom de colonne.

+0

Merci, Ben Reich. Le code fonctionne sur MS Access mais pas sur C#. Avez-vous d'autres idées pour insérer un enregistrement avec une date? –

+0

Avez-vous la possibilité de renommer la colonne? Si oui, je recommanderais d'essayer cela. –

+0

J'ai renommé la colonne. L'erreur apparaît toujours. Merci pour l'aide, Ben Reich. –

1

Les deux DateTime et Type sont problem names. Entourez les deux entre crochets dans votre instruction INSERT.

INSERT INTO Deployment ([DateTime], [Type], Brand, Model, SerialNo, Assignment) 
VALUES ('May 20, 2013','LAPTOP','ASUS','K55V','ABCD1234','10F HRD'); 

Télécharger Allen Browne gratuit Database Issue Checker Utility et l'utiliser pour examiner vos fichiers db d'accès. En plus des noms d'objets problématiques, il peut vous avertir d'autres problèmes gênants avec vos bases de données.

+0

Puis-je vous demander, HansUp? Vais-je utiliser le sharp (#) pour la date? –

+0

Non, vous avez dit que [DateTime] est un type de données de texte, donc placez la valeur de la date entre guillemets de la même façon que les valeurs que vous fournissez pour tous les autres champs de texte. – HansUp