data w interbase delphi7

0

Witam. Mam problem z utworzeniem zapytania sql w delphi 7. Probuje znalezc wiersze ktore posiadaja date mlodsza od podanej. W Oracle jest funkcja zamieniajaca string na date ( to_date ('data','maska_daty') ). Czy istnieje jakas analogiczna funkcja w delphi 7. korzystam z bazy danych typu paradox 7.

0
StrToDate('2004-07-24');
0

Oki moze podam wiecej szczegolow. Mam komponent TQuery do ktorego chce dac takie zapytanie:

var Zapytanie : String; // napis ktory bedzie interpertowany jako zapytanie sql

Zapytanie := 'select sum(Kwota) from "klienci_terminy.db" where ID_Klienta = ' + IntToStr (Numer_aktualnego_klienta) + ' and Termin_Zaplaty < StrToDate("2004-07-24")';

Jak zapisac w tym przypadku date o jaka mi chodzi by przelknelo to Interbase.

W oracle mozna zrobic tak:

select sum(Kwota) from "klienci_terminy.db" where ID_Klienta = ' + IntToStr (Numer_aktualnego_klienta) + ' and Termin_Zaplaty < to_date("2004-07-24", "yyyy-mm-dd")';

A jak to zrobic na bazie paradoxa poprzez Interbase z delphi 7 ??

0

nie rozumiem twojego problemy [???]
jaki masz format daty? TIMESTAMP? 0000:, 2004-07-27 - jeśli to TIMESTAMP, więc w czym problem?

0

Jak napisalbys takie zapytanie

select * from "klienci_terminy.db" where Termin_Zaplaty < 2004-11-30;

Nie potrafie powiedziec czy to jest Time Stamp bo nie wiem jak to sprawdzic. Jesli zrobie podglad bazy w Database desktop data jest wyswietlana w taki sposob 2004-11-30

Jesli podam do Komponentu TQuery zapytanie w takij formie jak widzisz na gorze zglasza mi sie blad "Time mismatch in expresion".

Chodzi o to jak w sql (w delphi) dac do zrozumienia ze 2004-11-30 to data.
Pierwszy raz pisze aplikacje w delphi. W java kozystajac z drivera ORACLE aby baza wiedziala ze 2004-11-30 to data uzywalo sie funkcji to_date ("2004-11-30", "yyyy-mm-dd").
czyli zapytanie wygladalo by w nastepujacy sposob:

select * from "klienci_terminy.db" where Termin_Zaplaty < to_date ("2004-11-30", "yyyy-mm-dd");

Bardzo prawdopodobne ze zle sie do tego zabralem (pierwszy raz w delphi).
Moze ty bys inaczej podszedl do tego zagadnienia.

0

zapytanie sql w Delphi to zwykły string: select * from TABELA where NP_DATE < '1990-11-30' - i to dziala!

1 użytkowników online, w tym zalogowanych: 0, gości: 1