Tipy a triky v Delphi, díl 124. - informace o BDE

Dlouho jsme zanedbávali databáze, takže to dnes trochu napravíme. Začneme od základu a zkusíme si pár základních věcí s BDE.

Potřebuje-li vaše aplikace ke svému běhu BDE (což není zdaleka nutná podmínka), určitě by bylo dobré programově ověřit, zda má uživatel BDE nainstalován. Celá problematika distribuce aplikace v součinnosti s BDE je téma téměř na samostatný článek a mnoho informací k této problematice se dočtete v jiném seriálu zde na Živě. Nám bude pro tentokrát stačit prosté ověření, že máme BDE k dispozici a pokud ne, může na to naše aplikace příslušným způsobem reagovat.

Možností jak ověřit přítomnost BDE je pochopitelně jako obvykle více. Můžeme například nahlédnout do systémového registru a hledat větev HKEY_LOCAL_MACHINE\SOFTWARE\BORLAND\DATABASE ENGINE, kde bychom měli najít neprázdný řetězec u hodnoty CONFIGFILE01. S registry už jsme pracovali tolikrát, že je již zbytečné znovu opakovat způsob načítání údajů a proto nechám tento postup na vaší chuti.

Dalším ze způsobů, který si dnes ukážeme, je využít přímo knihovny BDE a její funkce. To ukazuje náš jednoduchý příklad. Podobným způsobem se dá zjistit i verze BDE, což ukazuje druhý příklad.

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ExtCtrls, BDE;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

function BDE: Boolean;
begin
  Result := (dbiInit(nil) = DBIERR_NONE)
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
if BDE then ShowMessage(`BDE nainstalovan`)
      else ShowMessage(`BDE neni k dispozici`);
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  BDEver: SYSVersion;
begin
  DbiGetSysVersion(BDEver);
  ShowMessage(`verze BDE = ` + IntToStr(BDEver.iVersion));
end;

end.

Tolik tedy jemný úvod. Celá problematika databází v Delphi je velmi pěkně popsána v sérii článků, které začínají na výše uvedeném odkazu. Od nynějška se tedy tu a tam budeme setkávat i s jednoduchými tipy pro databáze.

Diskuze (6) Další článek: Pentium 4 2,8 GHz bude stát stejně jako 2,6 GHz

Témata článku: Software, Programování, Díl, Druhý příklad, Trik, DEL, TRI, Private, Nutná podmínka


Určitě si přečtěte

Co je to UWB? Nová technologie zastoupí Wi-Fi, Bluetooth i NFC a slibuje velké věci

Co je to UWB? Nová technologie zastoupí Wi-Fi, Bluetooth i NFC a slibuje velké věci

** V nových mobilech se začíná objevovat tajemná zkratka UWB ** Jde o další technologii, jak navzájem propojit různá zařízení ** Oproti Wi-Fi a Bluetooth má řadu výhod

Lukáš Václavík | 35

Podívejte se, co dokáže vyrobit jedna z nejexotičtějších 3D tiskáren v Česku

Podívejte se, co dokáže vyrobit jedna z nejexotičtějších 3D tiskáren v Česku

** Na jaře tiskla unikátní české respirátory ** Používá ji třeba Škoda Auto, a.s. ** Zajeli jsme se podívat do pražského showroomu 3Dees

Jakub Čížek | 12

Není jen Flightradar: Našli jsme další aplikace pro sledování letadel, některé ukážou i víc

Není jen Flightradar: Našli jsme další aplikace pro sledování letadel, některé ukážou i víc

** 8 služeb pro sledování leteckého provozu ** Nejznámější je Flightradar24, ale alternativy leckdy prozradí více ** Letadla i v této pohnuté době čile létají a je co pozorovat

Karel Kilián | 14

Starlink podle betatesterů: Rychlejší a levnější než satelitní internet v Česku

Starlink podle betatesterů: Rychlejší a levnější než satelitní internet v Česku

** Reddit se začíná plnit zkušenostmi se Starlinkem ** Při přímé viditelnosti dá i 120 Mb/s ** Klasický satelitní internet už teď dalece překonává

Jakub Čížek | 41

Nvidia představila grafické karty GeForce RTX 3090, RTX 3080 a RTX 3070. Známe české ceny

Nvidia představila grafické karty GeForce RTX 3090, RTX 3080 a RTX 3070. Známe české ceny

** Nvidia uvedla nové desktopové grafické karty GeForce RTX 3000 ** Jedná se o modely GeForce RTX 3070, 3080 a 3090 ** K výrobě se používá 8nm technologii od Samsungu

Karel Javůrek | 68

Jak se šíří Covid v Česku: Čerstvá data, mapy okresů a obcí. Každý den aktualizované grafy

Jak se šíří Covid v Česku: Čerstvá data, mapy okresů a obcí. Každý den aktualizované grafy

** Vývoj COVID-19 v Česku: nakažení, úmrtí, testovaní, hospitalizovaní ** Mapa podle okresů, přehled podle věku, situace v Evropě i ve světě ** Každý den aktualizované grafy a mapy

Marek Lutonský | 169


Aktuální číslo časopisu Computer

Velký test fitness náramků

Levné záložní zdroje

Jak si zabezpečit domov

Nejlepší monitory na trhu