Convertir Champ VARCHAR en DATE
Modérateur : Vilains modOOs
Règles du forum
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
-
- Membre lOOyal
- Messages : 26
- Inscription : 02 avr. 2019 15:59
Convertir Champ VARCHAR en DATE
Bonjour à vous,
Je travaille sur libreOffice Base. J'ai un champ VARCHAR qui contient des dates (au format texte puisque VARCHAR) qui ont été saisi sous cette forme: jj/mm/aa je souhaite avoir ses dates dans un champ DATE.
J'ai essayé de convertir mon champ VACHAR contenant des jj/mm/aa en champ DATE sans y parvenir.
J'ai donc créé un nouveau champ au format DATE et j’essaye de copier le contenu de mon champ VARCHAR dans ce nouveau champ DATE en convertissant les données sans y parvenir. J'ai essayé "CONVERT" , j'ai essayé SELECT CAST( CHAR AS DATE ) rien n'y fait.... il y a des discussions notées résolu mais qui ne le sont pas....
Auriez vous une idée... je mets une base en exemple. dans le formulaire F_PRINCIPAL le champ datetexte et dateDATE devraient avoir les même date...
Merci de votre aide....
Je travaille sur libreOffice Base. J'ai un champ VARCHAR qui contient des dates (au format texte puisque VARCHAR) qui ont été saisi sous cette forme: jj/mm/aa je souhaite avoir ses dates dans un champ DATE.
J'ai essayé de convertir mon champ VACHAR contenant des jj/mm/aa en champ DATE sans y parvenir.
J'ai donc créé un nouveau champ au format DATE et j’essaye de copier le contenu de mon champ VARCHAR dans ce nouveau champ DATE en convertissant les données sans y parvenir. J'ai essayé "CONVERT" , j'ai essayé SELECT CAST( CHAR AS DATE ) rien n'y fait.... il y a des discussions notées résolu mais qui ne le sont pas....
Auriez vous une idée... je mets une base en exemple. dans le formulaire F_PRINCIPAL le champ datetexte et dateDATE devraient avoir les même date...
Merci de votre aide....
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibeOffice Base 4.3.5.2 sous Mac OS 10.6.8 Par Obligation
-
- GourOOu
- Messages : 5622
- Inscription : 25 nov. 2011 18:07
- Localisation : Guyane
Re: [Base] Convertir Champ VARCHAR en DATE
Bonsoir
Pourquoi poser la question dans la section Macros et API ?
L'outil SQL permet de faire ce que tu demandes.
Si l'année de tes dates n'est qu'à partir de 2000 Si tu as des années en 19??A+
A priori si les auteurs ont marqué Résolu, c'est qu'elles le sont.CCC94 a écrit :l y a des discussions notées résolu mais qui ne le sont pas....
Pourquoi poser la question dans la section Macros et API ?
L'outil SQL permet de faire ce que tu demandes.
Si l'année de tes dates n'est qu'à partir de 2000
Code : Tout sélectionner
UPDATE "T-Grand COLLER" SET "DateDATE" = '20' || RIGHT( "DateTexte", 2 ) || '-' || SUBSTR( "DateTexte", 4, 2 ) || '-' || LEFT( "DateTexte", 2 )
Code : Tout sélectionner
UPDATE "T-Grand COLLER" SET "DateDATE" = CASEWHEN(RIGHT("DateTexte",2)<= '19','20' || RIGHT( "DateTexte", 2 ) || '-' || SUBSTR( "DateTexte", 4, 2 ) || '-' || LEFT( "DateTexte", 2 ),'19' || RIGHT( "DateTexte", 2 ) || '-' || SUBSTR( "DateTexte", 4, 2 ) || '-' || LEFT( "DateTexte", 2 ))
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
-
- RespOOnsable forum
- Messages : 12230
- Inscription : 08 nov. 2005 16:23
- Localisation : Caen, France
Re: [Base] Convertir Champ VARCHAR en DATE
Effectivement, le problème n'a rien à voir avec les macros.Piaf a écrit :Pourquoi poser la question dans la section Macros et API ?
Transfert dans la section Base qui traite des questions sur le SQL.
Merci de faire un effort quant à poster au bon endroit la prochaine fois.
-
- Membre lOOyal
- Messages : 26
- Inscription : 02 avr. 2019 15:59
Re: Convertir Champ VARCHAR en DATE
Milles excuses pour la rubrique, je n'avais pas trouvé le bon emplacement pour le SQL.
Merci pour le code, je ne l'aurais pas trouvé seul.... par contre, les dates sont bien copiées, mais à l'envers, sous la forme AA-mm-jj
comment faire pour les avoir sous la forme jj/mm/AA ?
Merci de ton aide...
Merci pour le code, je ne l'aurais pas trouvé seul.... par contre, les dates sont bien copiées, mais à l'envers, sous la forme AA-mm-jj
comment faire pour les avoir sous la forme jj/mm/AA ?
Merci de ton aide...
LibeOffice Base 4.3.5.2 sous Mac OS 10.6.8 Par Obligation
-
- GourOOu
- Messages : 5622
- Inscription : 25 nov. 2011 18:07
- Localisation : Guyane
Re: Convertir Champ VARCHAR en DATE
Bonjour
A+
Je ne reproduis pas Vérifie le format de la date dans la table.CCC94 a écrit :par contre, les dates sont bien copiées, mais à l'envers, sous la forme AA-mm-jj
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
-
- Membre lOOyal
- Messages : 26
- Inscription : 02 avr. 2019 15:59
Re: Convertir Champ VARCHAR en DATE
Bonjour, et merci de ta réponse... j'ai deux problèmes.
1) dans ma vraie base, quand je rentre ton code , j'ai cette erreur :
J'ai cru qque j'avais des dates à 5 chiffres au lieu de 6 dans ma base (6/10/18 au lieu de 06/10/18) j'ai fais des test ce n'est pas ça.
Si tu as une idée ?? sinon je fabrique une base qui ne fonctionna pas et je la mets ici...
2) Dans la base exemple (Base CCC94-CONVERTION.odb) si tu cherches une date (exemple 22/04/19) dans le champ : Date Format DATE du formulaire F_PRINCIPAL à l'aide de l'outil "recherche" (symbolisé par une loupe) LibreOffice ne trouve rien.
je tape 22-04-19 -> enter = LibreOffice ne trouve rien.
je tape 19/04/22 -> enter = LibreOffice ne trouve rien.
je tape 19-04-22 -> enter = LibreOffice trouve la fiche
comment revenir au format normal jj/mm/aa ?
Merci de ton aide....
1) dans ma vraie base, quand je rentre ton code , j'ai cette erreur :
Code : Tout sélectionner
1: Wrong data type: java.lang.NumberFormatException: For input string: "2/"
Si tu as une idée ?? sinon je fabrique une base qui ne fonctionna pas et je la mets ici...
2) Dans la base exemple (Base CCC94-CONVERTION.odb) si tu cherches une date (exemple 22/04/19) dans le champ : Date Format DATE du formulaire F_PRINCIPAL à l'aide de l'outil "recherche" (symbolisé par une loupe) LibreOffice ne trouve rien.
je tape 22-04-19 -> enter = LibreOffice ne trouve rien.
je tape 19/04/22 -> enter = LibreOffice ne trouve rien.
je tape 19-04-22 -> enter = LibreOffice trouve la fiche
comment revenir au format normal jj/mm/aa ?
Merci de ton aide....
LibeOffice Base 4.3.5.2 sous Mac OS 10.6.8 Par Obligation
-
- RespOOnsable forum
- Messages : 12230
- Inscription : 08 nov. 2005 16:23
- Localisation : Caen, France
Re: Convertir Champ VARCHAR en DATE
Bonjour,
Vous êtes aussi invité à tester avec une version à jour car celle que vous avez est largement obsolète.
60 jours plus tard, c'est effectivement le mieux que vous ayez à faire.CCC94 a écrit :sinon je fabrique une base qui ne fonctionna pas et je la mets ici...
Vous êtes aussi invité à tester avec une version à jour car celle que vous avez est largement obsolète.
-
- GourOOu
- Messages : 9365
- Inscription : 18 juil. 2008 15:29
- Localisation : F-Oise + F-Savoie
Re: Convertir Champ VARCHAR en DATE
Bonjour,
À sa décharge,
À sa décharge,
Mais 10.6.x (Snow Leopard) date de 2009 et nous en sommes à 10.14.5.Prérequis logiciels et matériels - Mac OS X a écrit :Mac OS X 10.9 (Mavericks) ou supérieur [...]
LibreOffice 4.3 peut fonctionner encore sur OS X 10.6.x, mais veuillez noter que ce support s'est terminé avec la fin de la branche 4.3 le 27 mai 2015.
AOO 4.1.15 et LibO stable 7.6.6 / macOS Intel 13.6.6 Ventura
Adoptium-temurinJDK-jre_1.8.0_412 / Firefox/Safari/Thunderbird /Time Machine+cloneCCC
Tutoriels du forum pour macOS
Pour sauvegarder vos documents c'est ceinture ET bretelles
Adoptium-temurinJDK-jre_1.8.0_412 / Firefox/Safari/Thunderbird /Time Machine+cloneCCC
Tutoriels du forum pour macOS
Pour sauvegarder vos documents c'est ceinture ET bretelles