Précédent   Forum des professionnels en informatique > Bases de données > Firebird
Firebird Forum d'entraide sur le SGBD Firebird. Avant de poster -> F.A.Q Firebird, Tutoriels
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 20/08/2007, 09h28   #1
Invité de passage
 
Inscription : mars 2002
Messages : 10
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 10
Points : 2
Points : 2
Par défaut Formater une date avec 23:59:59

Bonjour,

Voilà j'ai un champ date que je voudrais renseigner de cette façon :

Date 2 = Date 1 + 23:59:59.

Est ce possible de formater une date sous Firebird ?

Ou au pire est ce possible de convertir une date en chaine pour détourner le problème et faire :

Date2(de type string) = String(Date1) + 23:59:59

Merci beaucoup.
Caro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/08/2007, 16h27   #2
Expert Confirmé Sénior
 
Avatar de _skip
 
Homme
Développeur d'applications
Inscription : novembre 2005
Messages : 2 324
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : Suisse

Informations professionnelles :
Activité : Développeur d'applications
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2005
Messages : 2 324
Points : 4 785
Points : 4 785
http://www.ibphoenix.com/main.nfs?a=...60_sql_date_fs

Vous trouverez ici différentes façons de travailler avec des dates.
Pour ce qui est de votre question ce n'est pas très clair si vous souhaitez ajouter 24 heures à une date ou plutot compléter avec HH:MM:SS une date au format JJ/MM/AAAA
_skip est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2007, 12h13   #3
Membre habitué
 
Homme Ludovic Lemaitre
Ingénieur développement logiciels
Inscription : mai 2006
Messages : 64
Détails du profil
Informations personnelles :
Nom : Homme Ludovic Lemaitre
Âge : 36
Localisation : France, Mayenne (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2006
Messages : 64
Points : 102
Points : 102
Moi, j'ai une UDF "F_FORMATDATE" qui effectue le même boulot que le FormatDate de Delphi...

Pour faire ce que tu fais, j'utilise le code suivant :
Code :
1
2
 
DATE_RECH = CAST(F_FORMATDATE(:MADATE,'mm/dd/yyyy 23:59:59') AS DATE);
ou encore
Code :
1
2
3
4
 
/* ST est un VARCHAR */
ST=F_FORMATDATE(new.DEBUT,'mm/dd/yyyy') || ' 23:59:59';
new.FIN=CAST(:ST AS DATE);
Pergos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2007, 12h24   #4
Membre habitué
 
Homme Ludovic Lemaitre
Ingénieur développement logiciels
Inscription : mai 2006
Messages : 64
Détails du profil
Informations personnelles :
Nom : Homme Ludovic Lemaitre
Âge : 36
Localisation : France, Mayenne (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2006
Messages : 64
Points : 102
Points : 102
Bon, pour t'épargner l'UDF, je viens de tester la requète suivante :

Code :
1
2
3
4
5
 
SELECT delais,
       CAST (delais AS VARCHAR(20)) ,
       CAST(CAST (delais AS VARCHAR(20)) || ' 23:59:59' AS DATE)
FROM clients_cdes
=> première colonne : ma date d'origine
deuxième colonne : ma date d'origine au format STRING
troisième colonne : ma date d'origine à 23:59:59 au format date

Ca passe très bien en fait...
Pergos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2007, 13h06   #5
Membre habitué
 
Homme Ludovic Lemaitre
Ingénieur développement logiciels
Inscription : mai 2006
Messages : 64
Détails du profil
Informations personnelles :
Nom : Homme Ludovic Lemaitre
Âge : 36
Localisation : France, Mayenne (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2006
Messages : 64
Points : 102
Points : 102
Juste un dernier truc qui me chiffonnait : si ta date possède déjà une heure, elle restera telle quelle (et ne prendra donc pas l'heure 23:59:59)...

en gros :
- '01/10/2007' sera "transformé" en '01/10/2007 23:59:59'
- '01/10/2007 14:12:05' sera "transformé" en '01/10/2007 14:12:05'
Pergos est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h06.


 
 
 
 
Partenaires

Hébergement Web