Einzelnen Beitrag anzeigen

alex517

Registriert seit: 23. Nov 2004
Ort: Bernau b. Berlin
273 Beiträge
 
Delphi XE5 Enterprise
 
#56

Re: CRLab oder FIBPlus als BDE-Ersatz

  Alt 29. Aug 2007, 11:21
Hi,

@Hansa
Zitat von Hansa:
Einer der besten IB/FB - Spezialisten (Alex517) was benutzt der ? FIBPlus.
Da kommt man nichts ahnend aus dem Urlaub und wird auch noch so gebauchpinselt!
Als beste Spezialisten würde ich Holger Klemt(IBExpert) oder Thomas Steinmaurer nennen.
Bis zu denen fehlt mir noch eine ganze Menge. Aber trotzdem vielen Dank.

@Hagen
Zitat von negaH:
Alex benutzt FIBPlus und Firebird und er hat mich vollständig überzeugt.
zZ. muß ich mich mit MS-SQL7 rumschlagen kein Vergleich zu FIBPuls+IBExpert+Firebird.
Und wer mich kennt weiß wie schwer es ist mich so zu überzeugen.
Hagen, die 3 Wochen in Eisenach habe ich noch in lebhafter Erinnerung!
Und "Schwer" ist in diesem Zusammenhang durchaus diplomatisch ausgedrückt.
Wir müssen mal wieder telefonieren.


Jetzt zur Fragestellung:
Gleich vorweg, CrLab habe ich nie getestet.
Ich habe vorher mit IBO gearbeitet und kann mich da nur der Meinung von RavenIV anschließen.
In Zeos, bitte mich zu korrigieren, ist nur eine Transaction pro Connection möglich.
Damit kann man die Vorteile, die die Verwendung des Transactionmanagement bietet, nur eingeschränkt nutzen.

FibPlus hingegen unterstützt die Arbeit mit Transaction.
Z.B kann das FibDataSet zum Lesen und Schreiben unterschiedliche Transactionen verwenden.
Vorteil:
- schreibende Transactionen auf die Dauer des Scheibens begrenzt
- Änderungen können Hard-Committet werden(schönes Denglish), während das Dataset weiter offen bleibt
- lesende Transactionen laufen mit accessmode Readonly , damit wird die Last auf dem Server verringert.
Siehe Access modes


Eine weiter nützliche Sache ist die Unterstützung von Macros.
Damit kann man sehr flexibel UND bequem Abfragen "von Hand" zusammenbauen.
z.B.
SQL-Code:
  
  select ID, NachName, Vorname, Typ
  from Person
  @@Filter@
  @@Order@
Delphi-Quellcode:
  case AFiterArt of
  1: begin
       dtsPerson.ParamByName('Filter').AsString := 'where NachName like :NachName';
       dtsPerson.ParamByName('NachName').AsString := ANachName+'%';
     end;
  2: begin
       dtsPerson.ParamByName('Filter').AsString := 'where Typ = :Typ';
       dtsPerson.ParamByName('Typ').AsInteger := ATyp;
     end;
  3: begin
       dtsPerson.ParamByName('Filter').AsString := 'where Typ in (:Typen)';
       dtsPerson.ParamByName('Typen').AsString := ATypenListe;
     end;
  else
    dtsPerson.ParamByName('Filter').Clear; // Nicht vergessen!!
  end;

  if AOrder <> 'then dtsPerson.ParamByName('order').AsString := AOrder
    else dtsPerson.ParamByName('order').Clear; // Nicht vergessen!!
Verwendet man die SQLMonitor von FibPlus, so werden die gesetzten Parameter ebenfalls protokolliert,
was bei der Fehlersuche sehr von Vorteil ist.

Nicht zu vergessen ist auch die Möglichkeit der lokalen Sortierung im FibDataSet nach
ein oder mehreren Feldern, ohne dass die Datenmenge nochmal vom Server mit einem geänderten "Order by.." geholt werden muss.

Noch was zu der häufig erwähnten Möglichkeit, mit den gleichen Komponenten
verschiedene Datenbanken ansprechen zu können (z.B. Zeos):
Bisher kenne ich keinen Kunden (erst Einzelhandel, jetzt Pflegedienste),
der mir vorgeschrieben hätte, welche Werkzeuge (Compiler/DBs)
ich zur Erreichung der Funktionalität der Software verwenden soll.
Wichtig ist nur das Ergebnis.
Damit entscheide ich als Entwickler was sinnvoll ist und was nicht.
Mir sind Komponenten die genau auf die Datenbank zugeschnitten und alle Funktionalitäten der
DB unterstützen wichtiger, als die welche die nur den kleinsten gemeinsamen Nenner verschiedene DB bieten.


Also, wenn jemand Komponenten für den Zugriff auf IB/FB sucht
kann ich FibPlus nur empfehlen:
-schnell
-stabil
-komfortabel
-immer auf dem neuesten Stand der Entwicklung
-guter Support
-entsprechen dem Borland/CodeGear-Standard
-gut dokumentiert
-sind ihren Preis wert



alex
Alexander
  Mit Zitat antworten Zitat