[Delphi/Interbase]Probleme de date

Probleme de date [Delphi/Interbase] - Delphi/Pascal - Programmation

Marsh Posté le 26-04-2004 à 19:56:42    

Salut, j'ai une table LOCATION(num_client,num_exemplaire, date_loc, date_retour). (cette table est utilisée dans la gestion d'une videotheque).
Lors de la location d'un DVD je veux mettre dans date_loc la date du jour, je fais donc:
 
 
Var MaDate: String;
Begin
MaDate:=DateToStr(Date);
IBQuery1.Sql.Add(' INSERT INTO LOCATION(num_client,num_exemplaire, date_loc, date_retour) VALUES ('+QuotedStr(Edit1.Text)+','+QuotedStr(Edit2.Text)+','+QuotedStr(MaDate)+','')');
 
 
Or quand je veux faire un enregistrement ca me dit: "SQL Parse Error, EOF detected in string"
D'ou vient le probleme svp?
Merci d'avance

Reply

Marsh Posté le 26-04-2004 à 19:56:42   

Reply

Marsh Posté le 26-04-2004 à 20:31:32    

+','')');  
 
si tu veux mettre une chaîne vide en dernier param tu dois faire :
 
+','''')');


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 26-04-2004 à 20:54:54    

Ok merci

Reply

Marsh Posté le 26-04-2004 à 21:05:57    

Pour ne pas te perdre dans tes guillemets, tu devrais utiliser Format :
 
IBQuery1.Sql.Text := Format('INSERT INTO LOCATION(num_client,num_exemplaire, date_loc, date_retour) VALUES (%s, %s, %s, %s)', [QuotedStr(Edit1.Text), QuotedStr(Edit2.Text), QuotedStr(MaDate), QuotedStr('')]);
 
En plus c'est plus rapide à exécuter que de concaténer plusieurs chaînes (évidemment sur si peu de valeurs ça ne se voit pas, ce n'est que dans des boucles où c'est appelé des milliers de fois qu'on le voit :D)


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed