Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Requête qui ne marche pas...et query [ Base de données / Access ] (810mcu)

mercredi 28 novembre 2007 à 16:45:10 | Requête qui ne marche pas...et query

810mcu

De l'aide SVP,
Bonjour a tous, voila


Matable a/ Access en D6

champDate

 

J'écris le query,

Edit50 et Edit51 on respectivement date début et fin

query.SQL.Add('matable.champdate >= '+ Edit50.Text +' ');

et

query.SQL.Add('matable.champdate <= '+ Edit51.Text +' ');

 

le query me donne

select

matable.*

FROM

matable

Where

matable.champdate >= 01/05/2005

and

matable.champdate <= 31/05/2005

 

ça ne marche pas, par ce que je peut comprendre il n'interprète pas le Edit50.text comme étant 1 date mais oui un texte (aussi cet edit reçoit ça date a partir datatimer)

j'ai aussi essayer avec «'''» ça ne marche tj pas...

 

de l'aide SVP, ou est-ce que je me goure.
Merci a tous
810mcu


mercredi 28 novembre 2007 à 16:50:31 | Re : Requête qui ne marche pas...et query

810mcu

j'ai aussi essayer avec

query.SQL.Add('matable.champdate >= '+ QuotedStr(Edit50.Text) +' ');

et

query.SQL.Add('matable.champdate <= '+ QuotedStr(Edit51.Text) +' ');

tj negatif...


mercredi 28 novembre 2007 à 16:50:39 | Re : Requête qui ne marche pas...et query

810mcu

j'ai aussi essayer avec

query.SQL.Add('matable.champdate >= '+ QuotedStr(Edit50.Text) +' ');

et

query.SQL.Add('matable.champdate <= '+ QuotedStr(Edit51.Text) +' ');

tj negatif...


mercredi 28 novembre 2007 à 17:56:00 | Re : Requête qui ne marche pas...et query

Oniria

BOnjour,

les dates en sql s'écrivent pour 22/11/2007 , elles s'écrivent : 2007-11-22, sinon, tes deux comparaisons de dates, met les dans des parenthéses comme ca :

select

matable.*

FROM

matable

Where

((matable.champdate >= 2005-05-01)

and

(matable.champdate <= 2005-05-05))


j'ai déja eu se probléme avec MySQL.



Oniria

mercredi 28 novembre 2007 à 18:12:34 | Re : Requête qui ne marche pas...et query

810mcu


la il execute le query mais ne trouve rien comme resultat ??? et je suis sur qu'il y a des données, certain !!!!

select
matable.*

FROM
matable
Where
(matable.champdate>=01/05/2005 )
and
(matable.champdate<=28/11/2007 )
order by champdate

avec comme code
query.SQL.Add('(matable.date>='+ Edit50.Text +' )');
et
query.SQL.Add('(matable.date<='+ Edit51.Text +' )');

810mcu


mercredi 28 novembre 2007 à 18:36:56 | Re : Requête qui ne marche pas...et query

810mcu

la aussi la requete s'execute mais tj pas de resultat ???
étrange tout ça....... et mon champdate et bel et bien une date,
select
matable.*

FROM
matable
Where
((matable.champdate>=01/05/2005 )
and
(matable.champdate<=28/11/2007 ))
order by champdate

avec comme code
query.SQL.Add('((matable.champdate>='+ Edit50.Text +' )');
et
query.SQL.Add('(matable.champdate<='+ Edit51.Text +' ))');

sur une autre requete j'utilise
query.SQL.Add('matable.data_export Like ' + QuotedStr(Label75.Caption) + ' ');
et ça passe comme sur des roulettes a rien comprendre, 1 champ aussi date sur le format (jj/mm/aaaa) vraiment a rien comprendre

810mcu


mercredi 28 novembre 2007 à 22:36:16 | Re : Requête qui ne marche pas...et query

Delphiprog

Administrateur CodeS-SourceS
@810mcu : relis calmement la réponse d'Oniria ci-dessus et arrête de flooder stp.


May Delphi be with you !

Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.

jeudi 29 novembre 2007 à 12:36:17 | Re : Requête qui ne marche pas...et query

pers

Membre Club
Salut

La syntaxe ne serait pas plutôt

select

matable.*

FROM

matable

Where

matable.champdate >= #01/05/2005#

and

matable.champdate <= #31/05/2005#

Bonne journée

jeudi 29 novembre 2007 à 15:02:16 | Re : Requête qui ne marche pas...et query

Keneda

Réponse acceptée !
Salut 810Mcu
 
utilise des paramètres dans ta query tu ne seras plus ennuyé par ton formatage
les champs dates sont des réels pour Delphi (comme d'ailleurs la plupart des moteur de base de données) un TDateTime sous Delphi est un réel dont la partie entière représente le nombre de jour depuis le 30/12/1899 et la partie décimale la portion d'heure depuis "l'allumage" de ton pc

enfin, revenons à nos moutons dans un TQuery, un TADOQuery, peut importe dans un Query
de Delphi, tu peux employer des paramètres pour ne pas être ennuyer avec le transtypage.

un paramètre peux avoir n'importequel nom il doit être précédé de ":" (deux point) juste devant
(sans espace, collé au nom)  ici, on aura besoin de deux paramètres:

 :DateDebut et :DateFin (car tu veux un ensemble de données dans un interval de date donnée)

ta requête donne ça:

Query.SQL.Add('SELECT matable.* FROM matable');
Query.SQL.Add('Where matable.champdate >= :DateDebut');
Query.SQL.Add('and      matable.champdate <= :DateFin');

ensuite, il faut affecter les valeurs à tes paramètres

via un TQuery tu auras (attention, ici, il ne faut plus mettre les 2 points)

Query.ParamByName('DateDebut').AsDateTime:= StrToDate(Edit50.Text);
Query.ParamByName('DateFin').AsDateTime    := StrToDate(Edit51.Text);

Ensuite tu fais ton Query.Open;

via un TAdoQuery, il faudra passer par un variant

Query.Parameters.ParamByName('DateDebut').Value:= StrToDate(Edit50.Text);
Query.Parameters.ParamByName('DateFin').Value    := StrToDate(Edit51.Text);

puis tu fais ton Query.Open;

Le traitement sur les dates et toujours difficile, il vaut mieux travailler avec des réels
et traiter les dates dans le source plutôt que de traiter des dates directement dans le SGBDR
car si tu as un programme international tu seras toujours ennuyé avec les paramètres régionaux
(séparateur de date, format de date, etc.)

Voila, j'espère avoir pu t'aider, n'hésites pas dans le cas contraire

bon courage à tous

Keneda
 


Keneda, la fusée rouge
Keneda, la fusée rouge

jeudi 29 novembre 2007 à 18:06:33 | Re : Requête qui ne marche pas...et query

810mcu

Salut à tous,
Je tiens à remercier tout le monde,

De vs critiques, suggestion et aide.

 

Apres mil et une tentatives et essais je me suis rendu a l'évidence que

La procédure la plus efficace dans la plus part des cas serais bel et bien celle

Propose par Keneda (pour éviter tout ce qu'il a cité)

que je remercie comme a vous tous également

merci à tous
810mcu.




Cette discussion est classé dans : date, marche, query, champdate, edit50


Sujets en rapport avec ce message

query [ par jms29 ] Bonjour,en fait j'ai deux questions.-Tout d'abord, je voudrais bien savoir quelle sytnaxe il faut utilisé pour imbriqué deux select l'un dans l'autre, sql requétte [ par lotficrew ] _Bon salut je voudrais signaler mon problem aux pré des connésseur de delphi et en base de donnée j'ai utiliser une requéte pour l'affichage des artic Pourquoi ca marche pas? [ par magicvinni ] Et une deuxième question : pourquoi cette routine ne marche pas? (je voudrais convertir un string en date et si ca plante renvoyer la date d'aujourd'h query [ par Metrox ] 'lut all,j'aimerais savoir comment je peux faire pour réaliser une query, semblable à celle-ciSELECT Nom, Prenom, Date_naissanceFROM usersWHERE (Nom Date + Filtre + MySQL [ par klael ] Voilà je rencontre le pb suivant: lorsque je tente de filtrer une table (composant TTable) selon une date j ai le message d erreur suivant : Opération datetime et sybase [ par ohmonbateau ] bonjour, j'essaie de transférer une date(format datetime) d'une db sybase ASE vers un champ datetime d'une db Sybase ASA. J'utilise ADO et je travail Utilisation de MK Query Builder 3 [ par patfac1 ] Bonjour, Je doit développer une sorte de requeteur sous delphi. Pour ca on m'a donné le composant MK Query Buidler . Mais malheureusement je ne conna Effacer dans DBase [ par jfg ] Bonjourj'utilise les composants ADO avec une table DBase, la modification et la création marche, mais quand je veut effacer un enregistrement ca march Fichier typé (RECORD) [ par selma-elec ] UN fichier à été créer sur disque avec borland pascal 7.0 avec des enregistrement de ce type :Type Tata = Record Chemin : integer quel qu'un peut m'aider SVP!!!! [ par boudjemaa ] salut a tout le monde; voila si quel qu'un peut m'aider je serai rconnaissant.voila mon problème:je programme avec delphi 5 . j'ai trois tablesmandat(


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,359 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.