Iliskili Tablolar Arasında Arama Yapma

Diğer veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Kullanıcı avatarı
dtgb
Üye
Mesajlar: 175
Kayıt: 07 May 2004 10:02

Iliskili Tablolar Arasında Arama Yapma

Mesaj gönderen dtgb »

Merhaba arkadaslar;
Veritabanını Access olmak uzere TBL_Dosya ve TBL_Faturalar olmak uzere iki tane tablom var bu tablolar da iliskilerim su alanlar uzerinde
TBL_Dosya =>dosya_no
TBL_Faturalar =>ffatura_id iliskili olan
faturatarihi

bu alanlarım la iliski kurmaktayım TBL_Dosya'dan TBL_Faturalara bire cok iliskim mevcut
Amacıma gelince faturalar tablomda suzmus oldugum kayıtlara karsılık gelen dosyaların listesini alabilmek
Ornegin soyle bir arama yapmak istiyorum
faturatarihi edit1 ve edit 2 ye girmis oldugum tarih aralıgındaki kayıtlı dosyalarımı versin...

bunun sql cumlecigini nasıl yazabilirim?
boyle bir giris yaptım ama accessten dolayı calısmıyor sanırım.
dm.QDosya.Close;
dm.QDosya.SQL.Clear;

dm.QDosya.SQL.Add('SELECT * FROM TBL_Dosya,TBL_Faturalar WHERE TBL_Dosya.dosya_no=where TBL_Faturalar.ffatura_id=3');;

dm.QDosya.Open;
iyi calismalar...
Kullanıcı avatarı
dtgb
Üye
Mesajlar: 175
Kayıt: 07 May 2004 10:02

Mesaj gönderen dtgb »

Sanırım bu kısma yanlıs yazdım arkadaslar...
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

Mesaj gönderen naile »

Hayır accessde çalışır yalnız where kısmında hata yapmışsın. Şöyle olmalı:

Kod: Tümünü seç

dm.QDosya.Close;
dm.QDosya.SQL.Clear;
dm.QDosya.SQL.Add('SELECT * FROM TBL_Dosya,TBL_Faturalar WHERE TBL_Dosya.dosya_no= TBL_Faturalar.ffatura_id AND TBL_Faturalar.ffatura_id = 3');
dm.QDosya.Open;
Kullanıcı avatarı
dtgb
Üye
Mesajlar: 175
Kayıt: 07 May 2004 10:02

Mesaj gönderen dtgb »

denedim ama TBL_Faturalar.ffatura_id parametresinin varsayılan degeri yok yazıyorsanırım sorun ne olabilir acaba
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

Mesaj "Programlama"'dan VT'ye taşınmıştır. Lütfen ilgili foruma mesaj gönderelim.
Kullanıcı avatarı
dtgb
Üye
Mesajlar: 175
Kayıt: 07 May 2004 10:02

verituru uyusmazlıgı

Mesaj gönderen dtgb »

merhaba arkadaslar sorgu su haliyle calıstı
dm.QDosya.SQL.Add('SELECT * FROM TBL_Dosya,TBL_Faturalar WHERE TBL_Dosya.dosya_no= TBL_Faturalar.fdosya_id AND TBL_Faturalar.fatura_no LIKE ''' + edit4.text + '%''');

Fakat baska bir sorgu daha yapmaya calıstım
bu sorguda olcut ifadesinde verituru uyusmazlıgı diyor sanırım tarih formatıyla ilgili bir problem var ama cozemedim sorun ne olabilir
dm.QDosya.SQL.Add('SELECT * FROM TBL_Dosya,TBL_Faturalar WHERE TBL_Dosya.dosya_no= TBL_Faturalar.fdosya_id and TBL_Faturalar.fatura_tar between '''+DateToStr(dt1.Date)+''' and '''+DateToStr(dt2.Date)+'''');
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

Mesaj gönderen naile »

Tarih alanı için parametre kullan:

:ara params
Cevapla