Veri Tabanı/BDE

'Diğer Programlama Dilleri' forumunda acemihacker tarafından 3 Temmuz 2018 tarihinde açılan konu

  1. acemihacker

    acemihacker Ötüken Yolcusu Bronz Üye

    Mesaj:
    205
    Beğeniler:
    74
    Cinsiyet:
    Erkek
    Bu başlık altında, Delphi programlarında veri tabanı ve veri erişiminde kullanılan bileşenler ile ilgili püf noktaları ve gerekli kod örnekleri yer almaktadır.
    Ttable/TQuery üzerinde arttırarak arama
    Tedit kullanarak, Ttable üzerinde arttırmalı arama yapmak için, Tedid bileşeninin OnChange olay yordamına, aşğıdaki kod yazılır.

    Kod:
    procedure TForm1.Edit1Change(Sender: TObject);
    begin
    With Edit1 do
    if Text <> '' then
    Table1.FindNearest();
    end;
    Bu türlü bir arama Tquerry üzerinde yapılacaksa,
    procedure TForm1.Edit1Change(Sender: TObject);
    begin
    With Edit1 do
    if Text <> '' then begin
    Query1.Filter := 'code = '''+Edit1.Text+'''';
    Query1.FindFirst;
    end;
    end;
    
    veya
    
    procedure TForm1.Edit1Change(Sender: TObject);
    begin
    With Edit1 do
    if Text <> '' then
    Query1.Locate('code',Edit1.Text,);
    end;
    

    Paradox-Tablo yaratılması
    Kod içerisinden bir Paradox tablosu şu şekilde yaratılır.

    Paradox-Tablo yaratılması
    Kod içerisinden bir Paradox tablosu şu şekilde yaratılır.


    Kod:
    with TTable.create(self) do begin
         DatabaseName := 'C: emp';
         TableName := 'FOO';
         TableType := ttParadox;
         with FieldDefs do Begin
        Add('Age', ftInteger, 0, True);
        Add('Name', ftString, 25, False);
        Add('Weight', ftFloat, 0, False);
         End;
         IndexDefs.Add('MainIndex','IntField', );
         CreateTable;
    End;
    DBMemo içeriğinin başka bir DBMemo bileşenine aktarılması

    DBMemo6.Lines:=DBMemo5.Lines.Assign;
    TDBNavigator bileşenin, kod içerisinden kontrol edilmesi


    Kod:
    procedure TForm1.DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
    var
      BtnName: string;
    begin
      case Button of
        nbFirst  : BtnName := 'nbFirst';
        nbPrior  : BtnName := 'nbPrior';
        nbNext   : BtnName := 'nbNext';
        nbLast   : BtnName := 'nbLast';
        nbInsert : BtnName := 'nbInsert';
        nbDelete : BtnName := 'nbDelete';
        nbEdit   : BtnName := 'nbEdit';
        nbPost   : BtnName := 'nbPost';
        nbCancel : BtnName := 'nbCancel';
        nb*******: BtnName := 'nb*******';
      end;
      MessageDlg(BtnName + ' button clicked.', mtInformation, , 0);
    end;
    DBMemo içerisinde bir metnin aranması

    Kod:
    procedure Tform1.FindDialog1Find(Sender: TObject);
    var Buff, P, FT : PChar;
        BuffLen     : Word;
    begin
       With Sender as TFindDialog do
       begin
          GetMem(FT, Length(FindText) + 1);
          StrPCopy(FT, FindText);
          BuffLen:= DBMemo1.GetTextLen + 1;
          GetMem(Buff,BuffLen);
          DBMemo1.GetTextBuf(Buff,BuffLen);
          P:= Buff + DBMemo1.SelStart + DBMemo1.SelLength;
          P:= StrPos(P, FT);
          if P = NIL then MessageBeep(0)
          else
          begin
                DBMemo1.SelStart:= P - Buff;
               DBMemo1.SelLength:= Length(FindText);
          end;
       FreeMem(FT, Length(FindText) + 1);
       FreeMem(Buff,BuffLen);
       DBMemo1.SetFocus;
       end;
    end;
    ALINTIDIR!

     
Yükleniyor...

Bu Sayfayı Paylaş