Jump to content
GSForum - Segélyvonal

Delphi + SQL


csanesz

Recommended Posts

csanesz

Olyan hibába ütköztem, hogy Delphiben van egy SQL adatbázisom. Egy SQL parancsban a következõt próbáltam meg leirni:

 

Eletkor:='22';
datum:='19'+Eletkor+'01.01.';
sql:="select * from szemelyek.dbf where szulido>"+DateToStr(Date()-StrToDate(datum));
Form1.query1.sql.add(sql);

 

Magyarázat:

Ez valójában a következõt csinálná. A személyek.dbf-ben fel van rögzitve egyes személyeknek a születési dátuma éééé.hh.nn formában. egy formon egy editben bekérem az életkort pl.22, és a táblából azokat az adatokat szeretném kiválasztani akikfiatalabbak 22 évesnél. Ezt ugy oldom meg, hogy a mai dátumból kivonom, ebben a példában az 1922.01.01.-et, Így megkapom az 1984.xx.xx dátumot (ez van a dátum változóban). ez eddig tökéletesen mûködik. Ha ShowMessage parancsal kiiratom az sql sztringet, a tökéletesen megkapom azt amit várok: "select * from szemelyek.dbf where szilido>1984.02.05.". De amikor átadom a query-nek akkor kiirja, hogy a ''' not valid Date, és ezt teszi még hozzá: "select * from szemelyek.dbf where szilido>1984.02" Na de hova lett a többi karakter a 02 után??? :pislog:

 

Van valakinek ötlete? Szakdogába kéne, és sürgõs

 

Pls ha lehet. Köszike

Link to comment
Share on other sites

Athos

Igen, van. SQL-ben a dátumot nem adhatod így át.

select * from szemelyek.dbf where szilido>1984.02.05.

Ez így szintaktikailag nem helyes. Utána kéne nézni, hogy a dátumot milyen formában kell átadni. Én pl. Oraclenél így írom be: to_date('1984.02.05','YYYY.MM.DD'). Ezzel átalakítom a szövegben tárolt dátumot valódi dátummá. Lehet neked is ilyenre lenne szükséged.

Link to comment
Share on other sites

  • 1 year later...
vvendel

Én így írnám.

 

sql:='select * from szemelyek.dbf where szulido>''' +DateToStr(Date()-StrToDate(datum))+'''';

 

vagy

 

sql:='select * from szemelyek.dbf where szulido>''%s'' ';

sql:= Format(sql, [DateToStr(Date()-StrToDate(datum))]);

 

A dátum stringnek aposztofok közt kell szerepelni.

 

Link to comment
Share on other sites

manozsu

Szép estét mindenkinek!

 

Kérlek segítsetek, nem értek a számítógéphez, de még anno lekódoltam egy két mappát amibe fótok vannak és egy két szöveges dokumentumot....

Közben újra kellett telepíteni a gépet és sehogy sem férek hozzájuk és szükségem lenne most rájuk:)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...