type date sous oracle - SQL/NoSQL - Programmation
Marsh Posté le 26-09-2006 à 10:30:29
le type DATE d'oracle est très bien fait
pour une insertion de type date à partir d'une chaîne formattée, utilise la fonction TO_DATE
exemple :
Code :
|
Marsh Posté le 26-09-2006 à 10:32:51
je veux pas utiliser la fonction to_date
y se pourrai que j'ai des ligne qui ne contiennent que l'heure ou la date
Marsh Posté le 26-09-2006 à 11:20:43
avec decode tu pourras détecter le format de la chaîne avant d'appeler to_date() avec le bon pattern
Marsh Posté le 26-09-2006 à 11:40:31
vouloir faire d'une colonne hétérogéne une date c'est un peu n'importe quoi mais tu peux faire un truc du style :
DECODE(length(colonne),10,to_date(colonne|| '00:00:00', 'dd/mm/yyyy hh24:mi:ss'), to_date(colonne, 'dd/mm/yyyy hh24:mi:ss'));
Marsh Posté le 26-09-2006 à 13:09:53
Y a même pas besoin d'ailleurs, si on passe '15/10/2005 16:23:23' alors la partie 'time' sera prise en compte, et si on passe '15/10/2005' uniquement (avec le même pattern: 'DD/MM/YYYY HH24:MI:SS') alors la partie time est mise à 00:00:00 par défaut
Marsh Posté le 26-09-2006 à 14:08:23
question pour ma culture : il faut avoir un paramètre NLS particulier pour être au format DD/MM/YYYY ? parce qu'on pourrait mettre une date du style 01/01/2006 mais on ne saura pas si on est en DD/MM ou en MM/DD
Marsh Posté le 26-09-2006 à 14:22:22
Il ne faut pas se baser sur un format reconnu implicitement par Oracle ...
Il vaut mieux toujours spécifier le 'pattern' : DD/MM/YYYY ou MM/DD/YYYY par exemple.
Marsh Posté le 26-09-2006 à 14:32:37
++ avec Beegee.
Parceque le jour où un DBA, pour une raison obscure change un paramètre du serveur, proutch. Idem le jour où tu fais une migration vers un nouveau serveur.
Testé et approuvé à deux reprises au boulot. Des heures et des heures (jours ?) perdus pour ce genre de merdes.
Marsh Posté le 26-09-2006 à 15:03:31
MagicBuzz a écrit : |
ou pour voir si les dévs font du bon boulot
Marsh Posté le 19-06-2007 à 16:09:54
Bonjour à tous,
Pour ne pas créer un topic supplémentaire, j'up ce topic avec une question:
est-il possible de mettre un champ date à vide sous oracle? (un équivalent à 'null' qui lui ne semble pas marcher).
Merci d'avance.
Marsh Posté le 20-06-2007 à 19:21:21
Oui effectivement, avant même d'attendre une quelconque réponse, j'ai testé avec succès.
Merci Quand même.
Marsh Posté le 26-09-2006 à 10:21:32
salut,
Existe t il sous oracle un type qui permette de saisir la date dans se format
15/10/2005 16:23:23
Merci