Object Inspector’dan Bileşenin SQL özelliğine tıkladığınızda Select * From TabloAdiniz yazdıktan sonra Active özelliğini True yaptığınızda Tablodaki Veriler Listelenecektir.
SQL özelliğine aşağıdaki gibi bir kod yazarsanız kayıtlar belirttiğiniz alan adına göre sıralı şekilde listelenecektir.
Kod: Tümünü seç
Select * From TabloAdiniz
Order By AlanAdiniz
Kod: Tümünü seç
IBQueryAdiniz.SQL.Add(‘Select * From TabloAdiniz’);
Kod: Tümünü seç
IBQueryAdiniz.SQL.Clear;
IBQueryAdiniz.SQL.Add(‘Select * From TabloAdiniz Order By AlanAdiniz’);
Sorgunun hepsini tek satırda toplamak zorunda değilsiniz
IBQueryAdiniz.SQL.Clear;
IBQueryAdiniz.SQL.Add(‘Select * From TabloAdiniz’);
IBQueryAdiniz.SQL.Add(‘Order By AlanAdiniz’);
kodumuz tam olarak aşağıdaki şekilde olacaktır.
Kod: Tümünü seç
IBQueryAdiniz.Close;
IBQueryAdiniz.SQL.Clear;
IBQueryAdiniz.SQL.Add(‘Select * From TabloAdiniz’);
IBQueryAdiniz.SQL.Add(‘Order By ADI’);
IBQueryAdiniz.Open;
Kod: Tümünü seç
IBQueryAdiniz.Close;
IBQueryAdiniz.SQL. Strings[1]:=' Order By SOYADI ';
IBQueryAdiniz.Open;
Aşağıdaki şekilde şartlı bir sorgunuz olduğunu varsayarsak
Kod: Tümünü seç
Select * From TabloAdiniz Where ADI=’Fatih’
Buradaki Fatih yerine Edit vb. bileşenlerden alınacak bir parametre olarak kullanmak isteseydik aşağıdaki şekilde kullanırdık.
Kod: Tümünü seç
IBQueryAdiniz.Close;
IBQueryAdiniz.SQL.Clear;
IBQueryAdiniz.SQL.Add(‘Select * From TabloAdiniz Where ADI=’+#39+Edit1.Text+#39);
IBQueryAdiniz.Open;

IBQuerynin SQL özelliğine Delphiden değer fgöndermenin bir diğer yolu ise ParamByName metodudur.
Sorgu aşağıdaki şekilde bir sorgumuz olduğunu varsayalım.
Kod: Tümünü seç
Select * From TabloAdiniz Where ADI=:ParamAd
Aşağıdaki örnek kullanımını inceleyerek Diğer özelliklerine geçelim.
Kod: Tümünü seç
IBQueryAdiniz.Close;
IBQueryAdiniz.SQL.Clear;
IBQueryAdiniz.SQL.Add(‘Select * From TabloAdiniz Where ADI=:ParamAd’);
IBQueryAdiniz.ParamByName('ParamAd').Value:=Edit1.Text;
IBQueryAdiniz.Open;
AutoCalcField > False yapılırsa Delphi Tarafından oluşturulmuş Calculated alanlar görevini yerie getirmez.
CacheUpdate Ve UpdateObject özellikleri için IBUpdateSQL bileşeninin kullanımına bakın.
ForceRefresh > True yapılırsa Kayıt her post edildiğinde Tabloyu Refresh yapar.
Olayları
AfterCancel > Cancel Metodu Görevini Yaptıktan sonra meydana gelir.
AfterClose > DataSetiniz Kapandığı Zaman meydana gelir. Yani IBQueryAdiniz.Close; Komutu kullanıldıktan Sonra Meydana Gelir
AfterDatabaseDisConnect > Database İle Bağlantı Kesildikten sonra meydana gelir.
AfterDelete > Kayıt Silindikten Sonra Meydana Gelir. Örneğin bu olayda Transactionu Cimmit ederek tabloların anında tabloya yansımasını sağlayabilirsiniz.
AfrterEdit > Tablo Düzenleme moduna girdikten sonra meydana gelir.
AfterInsert > yeni kayıt eklendiği zaman meydana gelir. Diyelim formunuzda bir dbcheckbox bileşeni var ve siz varsayılan olarak bunun işaretsiz olmasını istiyorsunuz. Bu olada ilgili alana false vb. değeri atayarak işaretlenmemiş bir şekilde görünmesini sağlayabilirsiniz.
AfterOpen > Tabloyu açtığınız zaman meydana gelir. Diyelim bir sorgulama yapıyorsunuz ve sorgu sonucunda statusbar vb. bir bileşene kaç kaydın listelendiğini yazmak istiyorsunuz. Bu işlemi buraya yazmak işinizi kolaylaştıracaktır.
AfterPost > Kayıtlar tabloya gönderildikten sonra meydana gelir. Ben genelde Transactionu commit etmek için kullanırım.
AfterRefresh > Tabloya Refresh (yenile) yapıldığı zaman meydana gelir.
AfterScroll > Kayıtlar arasında dolaşırken meydana gelir. Örneğin Veritabanına resmi kaydetmediyseniz Harddiskinizden alırken Veritabanındaki kayıtlarla aynı anda gösterebilmenizi sağlar.
AfterTransactionEnd > Transaction modundan çıktığı zaman meydana gelir.
BeforeCancel > Cancel Metodu Görevini Yapmadan önce meydana gelir.
BeforeClose > DataSetiniz Kapanmadan meydana gelir.
BeforeDatabaseDisConnect > Database İle Bağlantı Kesilmeden önce meydana gelir.
BeforeDelete > Kayıt Silinmeden önce Meydana Gelir. Bu olayda kullanıcıya mesaj penceresiyle silip silinmemesi konusunda emin olup olmadığını sorabilirsiniz. Kullanıcı silmekten vaz geçerse SysUtils.Abort; komutuyla silme işlemini iptal edebilirsiniz.
BeforeEdit > Tablo Düzenleme moduna girmeden önce meydana gelir.
BeforeInsert > yeni kayıt eklenmeden önce meydana gelir. Diyelim bir demo program yazdınız ve 10 kayıttan fazla girilmesini istemiyorsunuz. Bu olayda kayıt sayısını kontrol edin ve 10 veya 10’dan fazla kayıt varsa yine SysUtils.Abort; komutuyla işlemi iptal edip kayıt girilmesini engelleyebilirsiniz.
BeforeOpen > Tabloyu açmadan önce meydana gelir.
BeforePost > Tabloya kayıt gönderilmeden önce meydana gelir. Burada bir alanın boş geçimlesini istemiyorsanız. Alanın dolu olup olmadığını kontrol edebilir. İsterseniz kayıtların tabloya gönderilmesini engelleyebilirsiniz.
BeforeRefresh > Tabloya Refresh (yenile) yapılmadan önce meydana gelir.
BeforeScroll > Bir kayıttan diğer kayda hareket etmeden önce meydana gelir.
BeforeTransactionEnd > Transaction modundan çıkmadan önce meydana gelir.
OnCalcFields > Calculated (Hesaplanmış) alanların hesaplayacağı değerler bu olaya yazılır.
OnDeleteError > Silme İşleminde hata meydana geldiği zaman oluşur.
OnEditError > Kaydı Düzenlerken hata meydana geldiği zaman oluşur.
OnFilterRecord > Kayıtları Filtrelerken Meydana Gelir.
OnNewRecord > AfterInsert gibidir.
OnPostError > Kayıt Tabloya gönderilirken hata meydana geldiği zaman oluşur.
OnUpdateError > Kayıt güncellenirken hata meydana geldiği zaman oluşur.
OnUpdateRecord Z Kayıt güncellenirken meydana gelir
Bileşen olaylarına iyi çalışmanızı öneririm. İşlerinizi kolaylaştırabilirler.