[Résolu] Conversion dates HSQLDB vers FIREBIRD
Publié : 15 mai 2019 17:51
Bonsoir à toutes et à tous,
Je prends un peu de temps pour vous livrer deux fichiers Base, concernant 1 table avec différents formats de dates.
Voici mon test :
Le 1er fichier est fait avec HSQLDB avec les formats suivants :
Champ Date1 format 31/12/1999 description JJ/MM/AAAA
Champ Date2 format 31 déc.99 description J MMM AA (noter que le point disparaît dans la description)
Champ Date3 format 31.déc.1999 description J.MMM AAAA (noter que le 2éme point disparaît dans la description)
Champ Date4 format 1999-12-31 description AAAA-MM-JJ (ceci est un format ISO 8601 (EN28601))
Les dates 1-3 et 4 sont les seuls formats préconisés ici par FIREBIRD. J'ai pris en plus le format de Date2 proche de Date3 à tout hasard.
Procédons maintenant à la conversion de la base vers Firebird en respectant la préconisation de LibreOffice. Après cette conversion, on ouvre le 2éme fichier et la table sous Firebird et là! Surprise pas une seule date ne correspond à la table HSQLDB. Voir image ci-dessous.
Je ne conseillerai que trop de convertir la base sans les tables et de les copier à part, car bizarrement les dates de HSQLDB (tous formats) continuent à fonctionner sous Firebird, mais la copie d'une table échoue lorsqu'elle est copiée avec une macro utilisant la commande "com.sun.star.sdb.application.CopyTableWizard.create()".
Noter que les heures minutes secondes subissent les mêmes problèmes que les dates.
Que faut-il penser de ce type de conversion, j'aimerais votre avis, et voyez vous une solution simple et fiable de transfert de tables existantes contenant divers formats de dates et d'heures HSQLDB vers Firebird.
Cordialement
plonge
Je prends un peu de temps pour vous livrer deux fichiers Base, concernant 1 table avec différents formats de dates.
Voici mon test :
Le 1er fichier est fait avec HSQLDB avec les formats suivants :
Champ Date1 format 31/12/1999 description JJ/MM/AAAA
Champ Date2 format 31 déc.99 description J MMM AA (noter que le point disparaît dans la description)
Champ Date3 format 31.déc.1999 description J.MMM AAAA (noter que le 2éme point disparaît dans la description)
Champ Date4 format 1999-12-31 description AAAA-MM-JJ (ceci est un format ISO 8601 (EN28601))
Les dates 1-3 et 4 sont les seuls formats préconisés ici par FIREBIRD. J'ai pris en plus le format de Date2 proche de Date3 à tout hasard.
Procédons maintenant à la conversion de la base vers Firebird en respectant la préconisation de LibreOffice. Après cette conversion, on ouvre le 2éme fichier et la table sous Firebird et là! Surprise pas une seule date ne correspond à la table HSQLDB. Voir image ci-dessous.
Je ne conseillerai que trop de convertir la base sans les tables et de les copier à part, car bizarrement les dates de HSQLDB (tous formats) continuent à fonctionner sous Firebird, mais la copie d'une table échoue lorsqu'elle est copiée avec une macro utilisant la commande "com.sun.star.sdb.application.CopyTableWizard.create()".
Noter que les heures minutes secondes subissent les mêmes problèmes que les dates.
Que faut-il penser de ce type de conversion, j'aimerais votre avis, et voyez vous une solution simple et fiable de transfert de tables existantes contenant divers formats de dates et d'heures HSQLDB vers Firebird.
Cordialement
plonge