Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2455 connectés 

  FORUM HardWare.fr
  Programmation

  [Delphi/SQL] Big probleme de comparaisons de date en SQL-> access :(

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Delphi/SQL] Big probleme de comparaisons de date en SQL-> access :(

n°86340
Tetedeienc​h
Head Of God
Posté le 05-01-2002 à 11:06:09  profilanswer
 

Shalom !
 
Donc, j'ai un gros probleme sur ce coup la...
 
J'ai une BDD sous ACESS2000 a laquelle j'accede via ODBC qui enregistre la date d'une  plongee par exemple...
 
Pour ajouter une date, vizarrement j'ai pas eu de probleme...  
 

Code :
  1. plongees.FieldValues['DatePlongee']:= DateToStr(CreerPlongee.Dateplongee.Date);


 
Marce parfaitement.
 
Mais quand je veux faire une requete (je n'ai laissé que le champ posant probleme ici) de ce style, ca ne passe pas :
 

Code :
  1. Requete1.SQL.Text := format ('Select * from bateaux where N°Bateau not in (select N°Bateau from plongees where ( plongees.Dateplongee = %s ) ) ',[ DateToStr(Dateplongee.Date)]);


 
La requete se fait bien sur, mais le résultat n'est jamais correct (en gros, meme si les dates correspondent, pour lui, ca ne correspond pas... )
 
Vous avez une idée ?
 
j'ai essayé en rajoutant des # autour, mais ca a rien changé, a part une belle erreur...
 
merci de votre aide !

 

[edtdd]--Message édité par Tetedeiench--[/edtdd]


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !
mood
Publicité
Posté le 05-01-2002 à 11:06:09  profilanswer
 

n°86351
[SDF]Poire
Vive Grumly
Posté le 05-01-2002 à 11:53:59  profilanswer
 

Dateplongee C quoi ? (quel composant ?)
idem pour plongees ?
(en debug regarde la valeure de DateToStr(Dateplongee.Date)
elles sont en quel format T dates ?
T sur que C pas ta requete qui fait pas ce que tu veux ?


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°86354
Tetedeienc​h
Head Of God
Posté le 05-01-2002 à 12:00:26  profilanswer
 

Dateplongee C un TdateTimePicker
 
plongees C ma table ...
 
la valeur de dateToStr(Dateplongee.date) est '11/01/2002'
 
Le format est le bon (j'ai regardé sous access, il est sous forme jj/mm/aaaa ... )
 
Ma requete, je veux juste qu'elle me renvoie tous les bateaux non pris dans une plongee a une date précise...
 
En gros, qu'elle vire de la liste des bateaux affichés ceux deja pris le 11/01/2002 par exemple...
 
la y a beau avoir l'enregistrement adequat (un bateau pris le 11/01/2002), ca me l'affiche quand meme...

 

[edtdd]--Message édité par Tetedeiench--[/edtdd]


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !
n°86361
[SDF]Poire
Vive Grumly
Posté le 05-01-2002 à 12:48:54  profilanswer
 

essaye :
Requete1.SQL.Text := 'Select * from bateaux where N°Bateau not in (select N°Bateau from plongees where ( plongees.Dateplongee = :' + DateToStr(Dateplongee.Date) + ';)';
 
regarde l'aide de property Params[Index: Word]TParams;

 

[edtdd]--Message édité par [SDF]Poire--[/edtdd]


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°86362
Tetedeienc​h
Head Of God
Posté le 05-01-2002 à 12:53:05  profilanswer
 

Erreur :  
 
Bateau: field '11/01/2002' not found ...
 
J'ai compris ce qu'était une requete paramétrée mais je ne sais pas l'utiliser :(


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !
n°86363
[SDF]Poire
Vive Grumly
Posté le 05-01-2002 à 12:56:12  profilanswer
 

Requete1.SQL.Clear;
Requete1.SQL.Add('Select * from bateaux where N°Bateau not in (select N°Bateau from plongees where ( plongees.Dateplongee = :Dateplongee)';  
Requete1.Params[0].AsString := DateToStr(Dateplongee.Date) ;
Requete1.ExecSQL;
 
Pas testé fait ici (trés longtemps que pas BD avec Delphi)
 
edit : putain de smiley de merde  :D à remplacé par : D sans espace

 

[edtdd]--Message édité par [SDF]Poire--[/edtdd]


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°86364
Tetedeienc​h
Head Of God
Posté le 05-01-2002 à 12:59:58  profilanswer
 

Code :
  1. Requete1.SQL.Add('Select * from bateaux where N°Bateau not in (select N°Bateau from plongees where ( plongees.Dateplongee = :Dateplonge ))');
  2. Requete1.Params[0].AsString := DateToStr(Dateplongee.Date) ;


 
[SDF]Poire ... je t'aime :love:
 
3 ans que je bloquais sur ce putain de truc !
 
Exactement 24 heures ...
 
Putain, je t'aime :love:
 
Pile poil :D
 
je suppose que pour le temps, il me suffit de faire la meme chose avec TimeToStr :D
 
En +, j'ai compris comment ca marchais les requetes paramétrées !
 
Merci, merci, merci, remerci, encore merci, toujours merci !
 
PS : t'inquiète pour le smiley, pour retoper  le code, j'édite tjs le message du gars me le filant pour ne pas passer apr m'interprétation du forum :D )

 

[edtdd]--Message édité par Tetedeiench--[/edtdd]


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !
n°86365
[SDF]Poire
Vive Grumly
Posté le 05-01-2002 à 13:00:01  profilanswer
 

Si dans ta BD Dateplongee C une date tu peux peut être faire :
Requete1.Params[0].AsDate := Dateplongee.Date;


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°86366
Tetedeienc​h
Head Of God
Posté le 05-01-2002 à 13:01:01  profilanswer
 

[SDF]Poire a écrit a écrit :

Si dans ta BD Dateplongee C une date tu peux peut être faire :
Requete1.Params[0].AsDate := Dateplongee.Date;  




je teste de suite !


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !
n°86367
[SDF]Poire
Vive Grumly
Posté le 05-01-2002 à 13:01:12  profilanswer
 

Tetedeiench a écrit a écrit :

Code :
  1. Requete1.SQL.Add('Select * from bateaux where N°Bateau not in (select N°Bateau from plongees where ( plongees.Dateplongee = :Dateplonge ))');
  2. Requete1.Params[0].AsString := DateToStr(Dateplongee.Date) ;


 
[SDF]Poire ... je t'aime :love:
 
3 ans que je bloquais sur ce putain de truc !
 
Exactement 24 heures ...
 
Putain, je t'aime :love:
 
Pile poil :D
 
je suppose que pour le temps, il me suffit de faire la meme chose avec TimeToStr :D
 
En +, j'ai compris comment ca marchais les requetes paramétrées !
 
Merci, merci, merci, remerci, encore merci, toujours merci !  




De rien
Bouquin + Delphi lancé -> aucun mérite
 :hello:


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
mood
Publicité
Posté le 05-01-2002 à 13:01:12  profilanswer
 

n°86368
Tetedeienc​h
Head Of God
Posté le 05-01-2002 à 13:01:51  profilanswer
 

Ca passe pas mais C pas grave, en passant par le str ca amrche nickel :love:
 
Merci :love:


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !
n°86369
[SDF]Poire
Vive Grumly
Posté le 05-01-2002 à 13:02:53  profilanswer
 

Tetedeiench a écrit a écrit :

Ca passe pas mais C pas grave, en passant par le str ca amrche nickel :love:
 
Merci :love:  




C mieux  
Requete1.Params[0].AsDate := Dateplongee.Date;  
si ça passe ça fait une conversion en -


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°86370
Tetedeienc​h
Head Of God
Posté le 05-01-2002 à 13:05:05  profilanswer
 

Non malheureusement, ca ne passe pas ... je viens de retenter ...
 
"format de date invalide (null) "...
 
Mais m'en fiche de la conversion, tu peux pas savoir :D
 
Au niveau ou j'en suis, C franchement pas grave !
 
Le principal, C que la requete marche ! :)


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !
n°86371
antp
Super Administrateur
Champion des excuses bidons
Posté le 05-01-2002 à 13:05:53  profilanswer
 

[SDF]Poire a écrit a écrit :

 
edit : putain de smiley de merde  :D à remplacé par : D sans espace  




 
si tu avais mis := au lieu de =: ça aurait pas fait de smiley :p


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°86373
[SDF]Poire
Vive Grumly
Posté le 05-01-2002 à 13:07:15  profilanswer
 

antp a écrit a écrit :

 
 
si tu avais mis := au lieu de =: ça aurait pas fait de smiley :p  




oui mais C = : qu'il faut et c : D qui à fait le smiley


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°86374
[SDF]Poire
Vive Grumly
Posté le 05-01-2002 à 13:07:53  profilanswer
 

Tetedeiench a écrit a écrit :

Non malheureusement, ca ne passe pas ... je viens de retenter ...
 
"format de date invalide (null) "...
 
Mais m'en fiche de la conversion, tu peux pas savoir :D
 
Au niveau ou j'en suis, C franchement pas grave !
 
Le principal, C que la requete marche ! :)  




 :D


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°86375
Tetedeienc​h
Head Of God
Posté le 05-01-2002 à 13:08:59  profilanswer
 

antp a écrit a écrit :

 
 
si tu avais mis := au lieu de =: ça aurait pas fait de smiley :p  




 
Ben vi mais comme C une requete parametrée et que le parametre est de la forme :gnagna ben...
 
En tout cas, je vais faire que des requetes paramétrés maintenant que j'ai compris comment ca amrchais !  
 
Ca rulez !
 
Ca prends juste les params dans l'ordre, les réutilise dans la requete si le nom est le meme, et les colle dans un tableau qu'il suffit de remplir a la fin avec les bon types et rulez !
 
Un format simplifié somme toute ! :D

 

[edtdd]--Message édité par Tetedeiench--[/edtdd]


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !
n°86376
antp
Super Administrateur
Champion des excuses bidons
Posté le 05-01-2002 à 13:17:37  profilanswer
 

Tetedeiench a écrit a écrit :

 
Ben vi mais comme C une requete parametrée et que le parametre est de la forme :gnagna ben...




 
oups j'avais pas vu que c'était dans la requête, je croyais que c'était une assignation.
 
c'est marrant je connaissais pas ce truc de params pour la requête, c'est pas mal...

 

[edtdd]--Message édité par antp--[/edtdd]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°86377
[SDF]Poire
Vive Grumly
Posté le 05-01-2002 à 13:19:44  profilanswer
 

antp a écrit a écrit :

 
c'est marrant je connaissais pas ce truc de params pour la requête, c'est pas mal...  
 




Beh moi non + en fait.... Mais Dick LANTIM il connaissait lui  :D et y a un exemple dans la doc donc ça a pas été trop dur.... :sol:


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°86378
Tetedeienc​h
Head Of God
Posté le 05-01-2002 à 13:19:59  profilanswer
 

Moi j'avais vu sur un cours trouvé sur le net, mais je savais pas assigner la valeur au paramètre... j'avais pas trouvé (dans les propriétés si, mais en dynamique non...)
 
Ca rulez :D


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [Delphi/SQL] Big probleme de comparaisons de date en SQL-> access :(

 

Sujets relatifs
[C - Linux] problème avec scanf[delphi] Mettre a jour un fichier
Alimentation PL/SQL d'une bas Oracle dénormalisée...[php mySQL] ! ptit problème avec select distinct et order by
Pbm de pilotes ODBC pour une base access avec ASP sous XP[PHP] Comment recuperer la date et l heure.
[WEFT-.EOT] Problème d'incorporation de police ...[Delphi] Créer une fenêtre avec Netstat ou ping
[SQL Server 7] est il possible de planifier ...[Delphi] Mettre une Form sous forme d'applet dans une page HTML
Plus de sujets relatifs à : [Delphi/SQL] Big probleme de comparaisons de date en SQL-> access :(


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR