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

 


Dernière réponse
Sujet : [Delphi/SQL] Big probleme de comparaisons de date en SQL-> access :(
Tetedeiench 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

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
Tetedeiench 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
[SDF]Poire

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:

antp

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]

Tetedeiench

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]

[SDF]Poire

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

[SDF]Poire

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

antp

[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

Tetedeiench 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 ! :)
[SDF]Poire

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 -

Tetedeiench Ca passe pas mais C pas grave, en passant par le str ca amrche nickel :love:
 
Merci :love:
[SDF]Poire

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:

Tetedeiench

[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 !

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

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]

[SDF]Poire 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]

Tetedeiench 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 :(
[SDF]Poire 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]

Tetedeiench 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]

[SDF]Poire 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 ?
Tetedeiench 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]


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)