iki tarih arasi verileri çağırma

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Misafir

iki tarih arasi verileri çağırma

Mesaj gönderen Misafir »

iki tarih arasındaki kayıtları çağırma işlemi yapmaya çalışıyorum....aşağıdaki gibi bi yol izledim...daha kodu çalıştırmadan yanlış olduğunu biliyordum...doğrusu nasıl our.Yardımcı olursanız sevinirim..

Adoquery1.SQL.Clear;
Adoquery1.SQL.Add('select * from itfmuayene where tarih<''%'+ datetostr(datetimepicker2.Date) +'%'' and tarih>''%'+ datetostr(datetimepicker3.Date) +'%''');
Adoquery1.Open;
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7588
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

@alperim değerli arkadaşım, :ara Arama en yakın dostun olsun.

doğru SQL cümlesi şöyle olmalı. %'ler olmayacak.

SELECT *
FROM TABLO_İSMİ
WHERE TARIH BETWEEN '01.01.2004' AND '05.01.2004'

gibi. Sen kodda gerekli değişiklikleri yaparsın.

WHERE TARIH BETWEEN ''' + datetostr(datetimepicker2.Date) + ''' AND ''' + .....

gibi.

Kolay gelsin.
Misafir

thanks

Mesaj gönderen Misafir »

adminim faysalım...

valla aradım billa aradım bulamadım...ya bugune kadar sorulmamış bir soru olmazki....siz her şeyi konusmussunuzdur...o zaman forumu kapatalım bi kitap olsun bu :)

olmazmı ? :D
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7588
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

onu da yaptık zaten :) indirmedin mi hala sen.

Bak imzamda var :wink:
Misafir

hata msg

Mesaj gönderen Misafir »

Adoquery1.SQL.Add('select * from itfmuayene where tarih between ''' + datetostr(datetimepicker2.Date) + ''' and ''%' + datetostr(datetimepicker2.Date) + '%'' ');

abi bu konu yazdım

ölçüt ifadesinde hata var msg si veriyor...
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7588
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

bu afacan % ler nerden çıktı yine. BETWEEN ifadesinde %'de yok. Komutun doğru yazımını yukarda verdim.

Kolay gelsin.
Misafir

Mesaj gönderen Misafir »

abi olmadığından dolayı onları ekledim belki olur diye ...ama yinede olmadı
Kullanıcı avatarı
bobasturk
Kıdemli Üye
Mesajlar: 1387
Kayıt: 20 May 2004 08:39
Konum: Düzce

Mesaj gönderen bobasturk »

DotCom
Kıdemli Üye
Mesajlar: 1696
Kayıt: 11 Tem 2003 10:30
Konum: İzmir
İletişim:

Mesaj gönderen DotCom »

Params veya Parambyname ile daha kolay olur düşüncesindeyim. iki tarih arası listeleme.

Arayarak Resim ulaşa bilirsiniz.

Kolay Gelsin.
Misafir

olmuyorrrrrrrrrrrrrrrrr

Mesaj gönderen Misafir »

ölçüt ifadesinde veri uyuşmazlığı ne demek yaaaaa???!!!!

delirecemm

Adoquery1.SQL.clear;
Adoquery1.SQL.Add('select * from itfmuayene where tarih between "01.07.2004" and "03.07.2004" ');
Adoquery1.open;

bu şekilde yazınca bile hata veriyor...çıldırcam....

acces ile yapıyorum kaydı...ve db de tarih alanı metin değil tarih şeklinde tanımlı....

yardım lütfen.....
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

Mesaj gönderen naile »

Tarihlerde HERZAMAN Param kullanın!

Kod: Tümünü seç

Adoquery1.SQL.clear; 
Adoquery1.SQL.Add('select * from itfmuayene where tarih between :tarih1 and :tarih '); 
Adoquery1.SQL.ParamByName('tarih1').AsDateTime = strtodate(edit1.text);
Adoquery1.SQL.ParamByName('tarih2').AsDateTime = strtodate(edit2.text);
Adoquery1.open; 

Kolay gelsin
Misafir

anlamakta zorluk çekiyorum.....

Mesaj gönderen Misafir »

delphi 7 kullanıyorum.....

verdiği hata şu....

[Error] Unit6.pas(253): Undeclared identifier: 'ParamByName'
[Error] Unit6.pas(253): Missing operator or semicolon
[Error] Unit6.pas(254): Undeclared identifier: 'ParamByName'
[Error] Unit6.pas(254): Missing operator or semicolon
[Fatal Error] Project1.dpr(10): Could not compile used unit 'Unit6.pas'

adoquery1.sql dedikten sonra parambyname özelliği yok....

noktaya bastığım zamanda...
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

Mesaj gönderen naile »

Pardon parambyname adoquery değil bde deydi :oops:

Ado da şöyle olacak

Kod: Tümünü seç

   AdoQuery1.Parameters.ParamByName('TARIH1').Value := StrToDate(Edit1.Text);
yusuf simsek
Üye
Mesajlar: 330
Kayıt: 09 Mar 2004 11:18
Konum: Konya
İletişim:

Mesaj gönderen yusuf simsek »

dostum ben BDE de şöyle yapmıştım ve olmuştu...
tarih1:=datetostr(edit1.text);
tarih2:=datetostr(edit2.text);

query1.close;
query1.sql.clear;
query1.sql.add('select * from tablo');
query1.sql.add(' where tarih>'''+tarih1+''''');
query1.sql.add('and tarih<'''+tarih2+'''');
query1.open;
ado da kodlar nasıl olduğunu bilmiyom.

biraz amatörce ama benim işimi görmüştü

kolay gelsin...

tüm üstadlara ayrıca selam ederim
Bugün bir kez daha,
Hiç Birşey Bilmediğimi Öğrendim!!!

https://extrayazilim.com
Misafir

naile teşekkürler

Mesaj gönderen Misafir »

naile saol....

gösterdiğin yol ile olayı çözdüm...

Adoquery1.SQL.clear;
Adoquery1.SQL.Add('select * from itfmuayene where tarih between :tarih1 and :tarih2 ');
Adoquery1.Parameters.ParamByName('tarih1').Value:=datetostr(datetimepicker2.Date);
Adoquery1.Parameters.ParamByName('tarih2').Value:=datetostr(datetimepicker3.Date);
Adoquery1.Open;

bu şekilde yaptım...

senin attığın ikinci postu yatpıktan sonra gördüm :)

bi fikir oluştu bende....


kendi çabanızla öğrendiğiniz şeyleri unutmazsınız...
Cevapla