j'ai ma base de donnée conçu en sql server comment convertir le format de la date en (YYYY/MM/DD) au (DD/MM/YYYY) dans mon interface delphi
et bonne journée à tous
Version imprimable
j'ai ma base de donnée conçu en sql server comment convertir le format de la date en (YYYY/MM/DD) au (DD/MM/YYYY) dans mon interface delphi
et bonne journée à tous
Bonjour,
Si je comprends bien la question, le problème du format se situe au niveau de l'affichage de la date, si c'est le cas, quel composant utilises tu pour l'afficher ? TDateEdit ?
Pour TDateEdit, le format peut être précisé dans sa propriété Format et voici les différents formats d'affichage ( dd mm yyyy )
bonjour,
dans mon application j'utilise les ADOQuery pour faire le select et des Edit,DBedit,DBLoukupCmboBox pour afficher la date
je vous donne l'exemple reel :
et si on ajoute cette requête a mon codeCode:
1
2
3 ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('select jour,date_du_jour from dbodate where num_sem ='+Quotedstr(Fprincipal.Edit5.Text)); ADOQuery1.Open;
Code:select CONVERT(VARCHAR(10),date_du_jour,103) from dbodate
on obtient l'affichage souhaiter mais ca marche pas dans delphi ?Code:
1
2
3 ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('elect CONVERT(VARCHAR(10),date_du_jour,103) from dbodate where num_sem ='+Quotedstr(Fprincipal.Edit5.Text)); ADOQuery1.Open;
Tu utilises quel version de Delphi ?
delphi 7
Bonjour,
il n'y a que deux solutions possible
1- transformer la requête de façon à ce que sql server envoi la date formatée , reste que cela dépend dans ce cas de la version de SQL server
FORMAT(Value,format[,culture]),fonctions de date et heure
là , il s'agit clairement d'un problème SQL Server
2- faire une requête au design (avec donc un composant ADOQuery posé sur la fiche) et non en run-time de façon à pour déclaré les champs du dataset et ainsi le format (clic droit sur le composant, puis ajout de tous les champs, puis définir le format du champ date)
Note au niveau SQL , il serait préférable d'utiliser un paramètre
note bis , il est étrange qu'un champ num_sem soit un string dans une table ,si j'avais à le mettre j'en aurais fait un entier, je ne connais pas SQL server mais il me semble pauvre en fonctions sur les datesCode:
1
2
3
4
5 ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('select jour,date_du_jour from dbodate where num_sem =:NS'); ADOQuery.Params.ParamByName('NS').value:=Fprincipal.Edit5.Text; ADOQuery1.Open;
bonjour,
le num_sem est un FK dans la table dbodate de type smallint.
c'est vrais, le problème reste dans les paramètres de sql server,
mais J'ai trouvé un substitut pour cette résolution, je crois que la colonne date_du_jour n'est pas reconnue par delphi quand j'ai utiliser la requête:
il m'affiche un message d'érreur son contenu que ADOQuery1,date_du_jour non trouvéCode:
1
2
3
4 ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('select jour, CONVERT(VARCHAR(12),date_du_jour,113) from dbodate where num_sem =:NS'); ADOQuery1.Parameters.ParamByName('NS').value:=Fprincipal.Edit5.Text; ADOQuery1.Open;
j'ai ajouter (as date_du_jour) au code et ça marche bien :
Pièce jointe 170819 Pièce jointe 170821Code:
1
2
3
4 ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('select jour, CONVERT(VARCHAR(12),date_du_jour,113)as date_du_jour from dbodate where num_sem =:NS'); ADOQuery1.Parameters.ParamByName('NS').value:=Fprincipal.Edit5.Text; ADOQuery1.Open;