ORA-01810: le code de format apparaît deux fois
Pourquoi le sql ci-dessous la génération d'un ORA-01810 erreur? J'ai fait des recherches sur l'erreur et je suis en utilisant différents formats de date pour chaque date d'insertion
INSERT INTO bag_grte_clm
(
schd_dprt_ldt,
arr_trpn_stn_cd,
bkg_crtn_gdt,
sbmt_bag_grte_clm_dt,
bag_grte_clm_stt_cd,
lst_updt_gts,
bag_grte_clm_gts,
dprt_trpn_stn_cd
)
VALUES (
TO_DATE('2015/12/06', 'yyyy/mm/dd'),
'YUL',
TO_DATE('2015-11-15', 'yyyy-mm-dd'),
TO_DATE('120615', 'MMDDYY'),
'DENIAL',
(current_timestamp),
TO_TIMESTAMP('20151206 00:00:00', 'yyyymmdd hh:mm:ss'),
'ATL'
)
OriginalL'auteur LedMan1001 | 2015-12-10
Vous devez vous connecter pour publier un commentaire.
Il est faux de deux façons:
1. Format Incorrect code
Vous avez répété le
MM
masque de format deux fois.MM
est mois etMI
est minutes.2. Heure incorrecte partie
00:00:00
est faux, comme il le ferait jeter ORA-01849 depuis le heure ne peut pas être égal à zéro, il doit être entre 1 et 12.La bonne façon est d'utiliser des 24 heures format, ou de quitter la temps partie qui est par défaut à
12 AM
.Par exemple,
Format 24 heures:
Pas de temps de partie:
S'il vous plaît marquer comme réponse, serait d'aider les autres aussi!
Fait - merci encore 🙂
Vous êtes les bienvenus!
OriginalL'auteur Lalit Kumar B
Vous avez utilisé le
mm
format de code à deux reprises dansTO_TIMESTAMP('20151206 00:00:00', 'yyyymmdd hh:mm:ss')
MM
est pour moisMI
est pour minutesVous avez probablement censé utiliser
YYYYMMDD HH:MI:SS
.Consultez la liste des format de date modèles pour plus d'informations.
TO_TIMESTAMP('20151206 00:00:00', 'yyyymmdd hh:mi:ss')
est toujours mal. Il jettera ORA-01849: l'heure doit être comprise entre 1 et 12.Merci pour votre réponse j'ai vraiment apprécier le sql fonctionne maintenant!
Si cette réponse a aidé à résoudre votre problème, veuillez vous envisagez de le marquant comme acceptée à l'aide de la case à cocher en vertu du droit de vote des flèches. Merci!!!!
Fait - merci encore 🙂
OriginalL'auteur Mr. Llama