web-dev-qa-db-fra.com

Insérez la commande SQL avec DateTime dans MS-Access

J'essaie la requête suivante dans MS-Access 2007, mais elle échoue sur le terrain.

INSERT INTO LOG (
    EMPLOYEECODE, STATUSID, LOCATIONID, TIME, DURATION,
    SHIFTID, LATECOMING, EARLYGOING, LOGDATE, STATIONID
)
VALUES (
    1, 1, 0, '4/21/2009 2:25:53 PM', 0, 
    8, 0, 1, '1/1/2009', 1
)

Le champ TIME est défini comme une date d'heure.

Sans le champ TIME, la requête fonctionne bien!

J'ai essayé un certain nombre de choses différentes, telles que enfermer la dateTime dans les hachages, les citations, etc. Cependant, la requête échoue toujours sur le champ Time.


Merci les gars! Cela m'a presque pris complètement là-bas. J'ai toujours maintenu l'erreur de syntaxe pour l'instruction insertion, mais je me suis rendu compte que TIME pourrait être un mot clé réservé, alors mettez-le sur des crochets comme [TIME] travaillé!

12

Entrée de la date et du temps dans l'utilisation d'accès #, puisque l'accès ne peut pas faire de conversion automatique du char/texte en date ou heure dans la requête SQL (ou l'accès à la requête IT), et vous ferez mieux d'utiliser International Standard pour saisir la date de date qui était AAAA-MM-DD HH: NN: SS (année à 4 chiffres, mois à 2 chiffres, journée à 2 chiffres, heure à 2 chiffres, minute à 2 chiffres, 2- chiffre seconde)

donc, pour 14/21/2009 2:25:5 UTILISATION # 2009-04-21 14:25:53 #

ou s'il échoue toujours, vous pouvez utiliser # '2009-04-21 14:25:53' #

EDIT: ci-dessus pourrait fonctionner si vous activez ANSI 92 ou à l'aide d'ADO/OLEDB en tant qu'interface de base de données, merci David de pointer

Je vous suggère d'utiliser le format AAAA-MM-DD HH: NN: SS et essayez-le avec des guillemets simples (') avant utilisation de # comme je l'ai dit ci-dessus

21
Dels