Précédent   Forum des professionnels en informatique > Bases de données > Firebird > Débuter
Débuter Forum d'entraide pour débuter avec Firebird
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/04/2003, 16h21   #1
Candidat au titre de Membre du Club
 
Inscription : avril 2003
Messages : 33
Détails du profil
Informations forums :
Inscription : avril 2003
Messages : 33
Points : 10
Points : 10
Envoyer un message via ICQ à nawac Envoyer un message via AIM à nawac Envoyer un message via MSN à nawac
Par défaut [newbie] date ...

Après m'être rendu compte qu'il n'y avait pas de type boolean dans Interbase, je tombe devans un type date un peu louche, que j'ai du mal à cerner...

Je travail en JAVA, avec le drivers JDBC de Borland, et les insert que j'envoie (avec des champs dates) mélangent des trucs au passage...
ex : je suis obligé d'envoyer une date sous cette forme
Citation:
04/29/2003 15:30:00
Interbase l'affiche ensuite sous cette forme :
Citation:
29/04/2003 15:30:00
voila, j'aimerais simplement comprendre la logique de ce SGBD, car j'ai vu en cherchant qu'il y avait des typpes date sans l'heure, ou avec que l'heure, et .... chui un peu perdu ! !

Merci d'avance.
nawac est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/04/2003, 17h14   #2
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
Oui les dates c'est un peu délicat

Les dates ne sont pas stoquées dans un SGBD sous une forme nn/nn/nnnn en fait c'est le plus souvant un float qui représente le nombre de secondes (ou milisecondes suivant le sgbd) depuis une date de référence....

Moi je travail avec Delphi et je ne converti pas un champ Date en une représentation string. Je le stoque directement dans un type Date Delphi ce qui m'évite des surprises....

Si tu ne peux pas faire la même chose... Ce qu'il faut savoir :

Interbase gère les représentations de date au format chaine à l'anglaise.
MM/JJ/AAAA mois/Jour/année

OU dans ce format : AAAA/MM/JJ

Moi je préfére travailler (si je suis obligé d'utiliser une représentation chaine d'une date) avec ce format Année/Mois/Jour dans lequel il n'y a pas d'ambiguités possible...

Lorsque tu fais un select d'une date le résultat est mis en forme par le midlware en fonction des paramètres locaux. Donc pour la france il va bien t'afficher les dates... JJ/MM/AAAA.
Mais lorsque tu voudra insérer une date ou même utiliser une date dans une clause where il va s'attendre à avoir un format anglais.... ou AAAA/MM/JJ

Voilà je ne sais pas si j'ai été assez clair... c'est peut etre un peu brouillon, j'ai fait vite...

Le type DATE (disponnible en dialect 3) n'inclus pas d'heure
le type timestamp inclus la date et l'heure assez présise....
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2003, 10h12   #3
Candidat au titre de Membre du Club
 
Inscription : avril 2003
Messages : 33
Détails du profil
Informations forums :
Inscription : avril 2003
Messages : 33
Points : 10
Points : 10
Envoyer un message via ICQ à nawac Envoyer un message via AIM à nawac Envoyer un message via MSN à nawac
ok merci, c'était clair pour moi, après ce que j'avais lu avant.
Par contre, c'est quoi les dialects 1 /2 / 3 ??
je vois ça partout mais...
nawac est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2003, 10h29   #4
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
Il faut voir ca comme un peu une version du langage...

Dialect 1 est utilisé pour les interbase < 6 il n'intègre pas certain type de données etc...

dialect 2 a été juste pour permettre une migration plus facile vers le dialect 3

dialect 3 pour les versions d'interbase 6 et suppérieures.

Donc si tu crées une nouvelle base utilise directement le dialect 3. (Une fois la base créée tu n'a plus à te soucier du dialect...)
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h49.


 
 
 
 
Partenaires

Hébergement Web