🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.delphi
Article #96

Re: Jak usunac rekordy

#96
From: Patryk P. Nowak
Date: Thu, 18 Sep 1997 10:33
69 lines
2728 bytes
Chudzik wrote:
> 
> Witam.
> Mam maly problem.
> Jesli bazie danych wydam polecenie
> usuniecia rekordow przy pomocy SQL
> DELETE FROM MojaBaza, rekordy sa
> jedynie zaznaczane jako usuniete.
> Jak mozna usunac je calkowicie (z pliku),
> aby nie zasmiecaly bazy.
> Chudzik.

	Ja skorzystalem z przykladu na pakowanie tabel i nieco go 
przerobilem, teraz wyglada tak:

function PackTable(TableToPack: TTable): boolean;
var
    crtd             : CRTblDesc;
    db               : TDataBase;
    oldconnected     : boolean;
    oldactive        : boolean;
    oldexclusive     : boolean;
    packresult       : DBIResult;
begin
    try
        Result := true;
        with TableToPack do
        begin
          {jeśli Active = false to Database = nil!!!}
          oldactive := Active;
          oldexclusive := Exclusive;
          db := Database;
          oldconnected := db.Connected;
          Active := true;
          {ale do pakowania musi być false}
          Active := false;
          Exclusive := true;
          db.Connected := true;
          FillChar(crtd,SizeOf(CRTblDesc),0);
          StrPCopy(crtd.szTBlName,TableName);
          crtd.bPack := True;
          packresult := DbiDoRestructure(db.Handle,1,@crtd, nil, nil,
nil, false);
          if  packresult <> DBIERR_NONE
            then
              Result := false;
          db.Connected := oldconnected; 
          Exclusive := oldexclusive;
          Active := oldactive; 
          Open;
        end;
    except
        on Exception do
          Result := false;
    end;
end;

	Pozdrawiam -

								P.

---------------------------------------------------------------------------
Patryk P. Nowak             Ph.D. student on Technical University of
Gdansk
"...You may say I'm a dreamer, but I'm not the only one..."
e-mail: patrykp@eti.pg.gda.pl        
http://www.ue.eti.pg.gda.pl/~patrykp/
Poglady wyglaszane przez autora nie zawsze sa zgodne z pogladami autora.
---------------------------------------------------------------------------
Technical Details
Message-ID: <34210369.3CAE@eti.pg.gda.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!agh.edu.pl!ict.pwr.wroc.pl!news.icm.edu.pl!news.task.gda.pl!sunrise.pg.gda.pl!not-for-mail
References: <5vdu0j$7e4$1@okapi.ict.pwr.wroc.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!agh.edu.pl!ict.pwr.wroc.pl!news.icm.edu.pl!news.task.gda.pl!sunrise.pg.gda.pl!not-for-mail
From: "Patryk P. Nowak" <patrykp@eti.pg.gda.pl>
Newsgroups: pl.comp.lang.delphi
Subject: Re: Jak usunac rekordy
Date: Thu, 18 Sep 1997 12:33:13 +0200
Organization: Technical University of Gdańsk
Lines: 69
Message-ID: <34210369.3CAE@eti.pg.gda.pl>
References: <5vdu0j$7e4$1@okapi.ict.pwr.wroc.pl>
NNTP-Posting-Host: knot255.eti.pg.gda.pl
Mime-Version: 1.0
X-Mailer: Mozilla 3.01Gold (Win95; I)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit