Paradox Hakkında

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
secret_boy
Üye
Mesajlar: 151
Kayıt: 17 Kas 2005 04:46

Paradox Hakkında

Mesaj gönderen secret_boy »

Merhaba arkadaşlar Paradox veri tabanı kullandım şu şekilde bir şey yapmak istiyorum.
tek bir edit üzerinden veritabanımda bulunan tüm alanlarda arama yaptırmak.Örneğin ben edite A yazdığımda tüm alanların içinde geçen A karakterini bulacak AN yazdığım zaman yine tüm alanlardan AS olan kısımları eleyerek gelecek ama tek bir field e göre değil de tüm field lerde bunu yapacak.
Daha somut olsun diye
Adı,Soyadı, TC Numarası, Telefon Numarası, diye alanlar var.
teoman,koçak,12345678901,05541234567 veriler var edite 1 yazdığımda telefon numarasında bulunan 1 ve Tc Numarasında bulunan 1 i işaretleyecek yada buna benzer içinde 1 olan kayıtları getirecek.Bunu nasıl yapabilirim.
Teşekkür ederim
Kullanıcı avatarı
esistem
Üye
Mesajlar: 464
Kayıt: 02 Eki 2007 11:22
İletişim:

Re: Paradox Hakkında

Mesaj gönderen esistem »

SQL ile yapabilirsin,
SELECT * from tablo where ADI LIKE '% DEGER %' OR SOYADI LIKE '% DEGER %' ......
gibi
secret_boy
Üye
Mesajlar: 151
Kayıt: 17 Kas 2005 04:46

Re: Paradox Hakkında

Mesaj gönderen secret_boy »

Merhaba sayın esistem vermiş olduğunuz kodları denedim aşağıdaki gibi,hata veriyor yanlış yapıyorum sanırım rica etsem ilgilenebilir misiniz ?
Teşekkürler iyi çalışmalar.

Kod: Tümünü seç

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DBTables, DB, Grids, DBGrids, StdCtrls;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    DataSource1: TDataSource;
    DBGrid1: TDBGrid;
    Table1: TTable;
    Query1: TQuery;
    DataSource2: TDataSource;
    procedure Edit1Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Edit1Change(Sender: TObject);
begin
 Query1.Close;
 Query1.SQL.Clear;
 Query1.SQL.Add('SELECT * from rehber where Adi LIKE '+edit1.text+ %' OR Soyadi LIKE '% edit1.text %' OR Ev_tel LIKE '% edit1.text %' OR Cep_tel LIKE '% edit1.text %' OR Cep_tel_1 LIKE '% edit1.text %'  OR Is_tel LIKE '% edit1.text %'OR Is_tel_1 LIKE '% edit1.text %' OR Fax LIKE '% edit1.text %'  OR Email LIKE '% edit1.text %' OR Adres LIKE '% edit1.text %' OR Is_adresi LIKE '% edit1.text %');
 Query1.Open;

 end;
end.
Kullanıcı avatarı
esistem
Üye
Mesajlar: 464
Kayıt: 02 Eki 2007 11:22
İletişim:

Re: Paradox Hakkında

Mesaj gönderen esistem »

hatayıda yazsaydın iyi olurdu ben gördüğümü sölim,

Kod: Tümünü seç

Query1.SQL.Add('SELECT * from rehber where Adi LIKE '+edit1.text+ %' OR Soyadi LIKE '% edit1.text %'
yukardaki sorguda tek tırnak ve + işaretleri yanlış yazılmış doğrusu

Kod: Tümünü seç

Query1.SQL.Add('SELECT * from rehber where Adi LIKE %'+edit1.text+'% OR Soyadi LIKE %'+edit1.text+'% ....
şeklinde olmalı,
hatta emin olmamakla birlikte aşağıdaki gibi olmalı,

Kod: Tümünü seç

Query1.SQL.Add('SELECT * from rehber where Adi LIKE '+quotedstr('%'+edit1.text+'%')+'OR Soyadi LIKE '+quotedstr('%'+edit1.text+'%') .....
şeklinde olmalı
secret_boy
Üye
Mesajlar: 151
Kayıt: 17 Kas 2005 04:46

Re: Paradox Hakkında

Mesaj gönderen secret_boy »

esistem yazdı:hatayıda yazsaydın iyi olurdu ben gördüğümü sölim,

Kod: Tümünü seç

Query1.SQL.Add('SELECT * from rehber where Adi LIKE '+edit1.text+ %' OR Soyadi LIKE '% edit1.text %'
yukardaki sorguda tek tırnak ve + işaretleri yanlış yazılmış doğrusu

Kod: Tümünü seç

Query1.SQL.Add('SELECT * from rehber where Adi LIKE %'+edit1.text+'% OR Soyadi LIKE %'+edit1.text+'% ....
şeklinde olmalı,
hatta emin olmamakla birlikte aşağıdaki gibi olmalı,

Kod: Tümünü seç

Query1.SQL.Add('SELECT * from rehber where Adi LIKE '+quotedstr('%'+edit1.text+'%')+'OR Soyadi LIKE '+quotedstr('%'+edit1.text+'%') .....
şeklinde olmalı

kodlar için çok teşekkür ederim sayın esistem.En son vermiş olduğunuz kod süper çalışıyor.
başarılarınızın devamını dilerim.
Cevapla