Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi insert into Datum (https://www.delphipraxis.net/134912-insert-into-datum.html)

daNiii 1. Jun 2009 11:38

Datenbank: access • Version: 2002 • Zugriff über: ado

insert into Datum
 
hi..
Ich habe ein Problem bein einlesen von dem DAtum.
Weis jemand durch was ich den
Teil: '+datetostr(Datum)+'
ersetzen sollte damit das Einlesen in die DAtenbank funktioniert?

Delphi-Quellcode:
   Datum:= now;
   showmessage(datetostr(Datum));
form1.adoquery1.close;
form1.adoquery1.sql.clear;
form1.adoquery1.sql.Add('insert into Verleih (Medien-ID, Kunden-ID, Ausleihzeit) values('+inttostr(MID)+', '+inttostr(KID)+', '+datetostr(Datum)+')');
form1.adoquery1.execsql;

DeddyH 1. Jun 2009 11:41

Re: insert into Datum
 
Verwende Parameter.
Delphi-Quellcode:
form1.adoquery1.sql.Text := 'INSERT INTO Verleih (Medien-ID, Kunden-ID, Ausleihzeit) VALUES(:MID,:KID,:Datum)';
form1.adoquery1.Parameters.ParamByName('MID').Value := MID;
form1.adoquery1.Parameters.ParamByName('KID').Value := KID;
form1.adoquery1.Parameters.ParamByName('Datum').Value := Datum;

BackOrifice 1. Jun 2009 11:45

Re: insert into Datum
 
Hi.

Du baust ja deinen Query als String zusammen. Erstens würde ich raten, immer die Funktion Format() bei solchen Bauten zu benutzen (das ist aber nur was fürs Auge).
Ich weiß nicht, wie Access seinen Datums Str. genau haben will; testen solltest du an das an einem Query Analyzer. Sobald du das richtige Format hast, kannst du beliebige Konstellationen mit FormatDateTime() erstellen.

Delphi-Quellcode:
[SQL]
SQLcmd := Format
  ('INSERT INTO termin (termin_id, inhalt_id, semester_id, anfang, ende, '
  +'lastedit, lastuser, gruppierungsnr) VALUES (%u, %u, %u, ''%s'', %s, ''%s'', ''%s'', %s)',
  [Generals.EventId,Content.ContentId,Generals.SemesterId,
  FormatDateTime('dd.mm.yyyy hh:nn',Generals.EventBegin),
  SQLCmd,FormatDateTime('dd.mm.yyyy hh:nn',Generals.LastEdit),
  Generals.LastUser, GetFormatedIntAsString(Generals.GroupingNo)]);
[/SQL]

mkinzler 1. Jun 2009 11:50

Re: insert into Datum
 
Wobei Parameter viel besser sind und zudem weitere Vorteile bieten


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:03 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz