![]() |
Re: CRLab oder FIBPlus als BDE-Ersatz
Wer noch Interesse hat, der sollte sich beeilen. Könnte sein, dass bei 4 Interessenten zeitnah bestellt wird. 8)
|
Re: CRLab oder FIBPlus als BDE-Ersatz
Zitat:
|
Re: CRLab oder FIBPlus als BDE-Ersatz
Schon mal im offiziellen
![]() |
Re: CRLab oder FIBPlus als BDE-Ersatz
Ja. Wie gesagt, ich habs über Streams umgangen, daher ist mir das jetzt auch egal.
Nur das mit Readonly wüsste ich noch gern... |
Re: CRLab oder FIBPlus als BDE-Ersatz
Herzlich willkommen in der Delphi-Praxis, Amiga-Fan. Ja, Du warsts. :mrgreen: Hast immerhin 100 EUR gespart und dafür keinen Source etc. Die aufgetauchten Probleme konnten nur mit Streams gelöst werden ? :shock: Dann ist meine Entscheidung für FIBPlus wohl schon richtig so. Allerdings : 4 Leute haben die 4er Lizenz schon gesichert für maximal 183 EUR jeweils. Jeder der da noch dabei kommt wäre gut. Im Hintergrund läuft da aber noch einiges. Bzw. könnte. :???:
|
Re: CRLab oder FIBPlus als BDE-Ersatz
Das Problem ist hier beschrieben
![]() der Workaround hatte bei mir aber nicht funktioniert. Aber mit meinem Workaround, übergabe des Parameters mit params(0).asstream:= und Benutzung eines einfachen Textstreams hatte dann funktioniert, weiter verfolgt hatte ich das anschließend nicht. Die Leute liefern häufig Updates, und ganz fehlerfrei wird fibplus auch nicht sein. |
Re: CRLab oder FIBPlus als BDE-Ersatz
|
Re: CRLab oder FIBPlus als BDE-Ersatz
Zum Thread im Thread, also FIBPlus Bestellung. Es sind jetzt genügend Leute dabei. Wer noch überlegt, der soll das nicht mehr lange machen (10. Sep. 2007). Ich habe ausgehandelt, dass personalisierte Lizenzen auch für mehr als 5 Leute gehen, zu denselben Bedingungen inkl. Rechnung usw. Bei Interesse : PN schicken. Später kann sich sonst jemand anderes drum kümmern. :stupid:
|
Re: CRLab oder FIBPlus als BDE-Ersatz
Auch wenn Hansa die Werbetrommel rührt,
bin ich immer noch der Auffassung, das die Zeos-Komponentne ein gute Alternative zur BDE und auch zu FIB sind. Gerade das man in Grenzen sogar die DB wechseln kann ohne dass die Applikation das mitbekommt finde ich interessant. Gut Dokumentiert ist das auch: ![]() ![]() ![]() ![]() Grüße // Martin |
Re: CRLab oder FIBPlus als BDE-Ersatz
Die Werbetrommel hat mitlerweile ausgedient. Wer nicht will, der hat gewollt. :mrgreen:
|
Re: CRLab oder FIBPlus als BDE-Ersatz
Hallo,
auch wenn mschaefer die Werbetrommel rührt ;) ne, im ernst. ZEOS war für mich auch in der Pipeline. Nur : Es gibt bisher kein HardCommit, nur SoftCommits. Und das ZEOS-Team sagt, mal sehen, wenn Zeit ist. Wer jetzt sagt na und, hat die MGA Firebird nicht verstanden. Das Umstellen auf andere DB's kann man auch über bridge pattern machen. Heiko |
Re: CRLab oder FIBPlus als BDE-Ersatz
Ich verfolge den Thread hier schon ne weile, eine Frage am Rande (bin ja noch Azubi :mrgreen: ) was sind denn harte und softe Commits?
|
Re: CRLab oder FIBPlus als BDE-Ersatz
Bei harten Commits, wird die Transaktion richtig abgeschlossen, bei Softcommits werden die Änderungen zwar zurückgeschrieben aber nicht endgültig abgeschlossen (CommitRetaining)
|
Re: CRLab oder FIBPlus als BDE-Ersatz
ah, comprendo! :dp:
|
Re: CRLab oder FIBPlus als BDE-Ersatz
Hallo,
naja, das ist die technische Erklärung. Der Vorteil ist, eine SoftCommit ist schneller (auf Cleint-Seite) als ein hardcommit. Nun zum Problem damit. FB führt ja eine Liste der laufenden Transaktionen mit, bei softcommits bleibt die Transaktionsnummer gleich, die "Transaktionsmaske" auf dem Server wird immer grösser, weil FB immer alle aktiven Transaktionen im Auge behalten muss. -> der Speicherverbrauch wird immer grösser. Das äussert sich dann in solchen Sätzen wie "Mein Programm wird mit der Zeit immer langsamer, wenn der Server neu gestartet wird, geht es wieder ganz schnell, aber mit der Zeit wird es wieder langsam" Die Ursache können nat. auch lang laufende Transaktionen sein (jaja, in IB7 wurde zumindestens bei read-only was dagegen getan). Das ganze lässt sich schön bei Andreas Kosch nachlesen. Heiko |
Re: CRLab oder FIBPlus als BDE-Ersatz
Hi,
@Hansa Zitat:
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. :-D @Hagen Zitat:
Und "Schwer" ist in diesem Zusammenhang durchaus diplomatisch ausgedrückt. :-D 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. ![]() 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:
Verwendet man die SQLMonitor von FibPlus, so werden die gesetzten Parameter ebenfalls protokolliert,
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!! 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 |
Re: CRLab oder FIBPlus als BDE-Ersatz
Hallo,
stuemmt, eine Transaction pro Connection, das hatte ich noch vergessen, zu erwähnen. Bei einer Umstellung Bde-ZEOS ist das sogar ganz nützlich: TDataBase.StartTransaction -> TZConnecon.StartTransaction Wenn man FB allerdings richtig ausreizen will, sind mehrere Transactionen pro Connection natürlich schön. Ein anderes nettes Feature ist das Wiederherstellen des Status, wenn mal die Verbindung weg war. Und mit Status sind auch offene Queries gemeint. Heiko |
Re: CRLab oder FIBPlus als BDE-Ersatz
Zitat:
mit CachedUpdates gearbeitet werden muss. Durch das Verlieren der Connection wird zwangsläufig auch die Transaktion beenden. Durch CachedUpdates bleibt die lokale Datenmenge trotz beendeter Transaktion offen und kann nach einem Reconnect weiter verwendet werden. Damals hat mich der Zusätzliche Aufwand der CachedUpdates abgeschreckt, so das ich mich nicht mehr darum gekümmert habe. Allerdings ist das schon eine ganze Weile her, gibt es in zwischen neue Erkenntnisse? alex |
Re: CRLab oder FIBPlus als BDE-Ersatz
Hallo,
ich meinte mit dem netten Feature FIBPlus, und so wie ich das gelesen habe, geht das automatisch. Heiko |
Re: CRLab oder FIBPlus als BDE-Ersatz
Zitat:
alex |
Re: CRLab oder FIBPlus als BDE-Ersatz
Hallo,
ohhhhh, das hatte ich aber schon mal anders gelesne. ![]() Support of re-connection to a database if the connection has been lost. This requires use of TpFIBDataSet.CachedUpdates to apply user's data changes to the restored connection. Heiko |
Re: CRLab oder FIBPlus als BDE-Ersatz
Es bleibt also bei CachedUpdates.
Aber wie sollte es auch anders gehen? Connection weg, Transaktion weg, die an die Transaktion gebundene Datenmenge weg.. Es sei den man behält die Datenmenge in einem lokalen Zwischenspeicher und der wird über CachedUpdates realisiert. alex |
Re: CRLab oder FIBPlus als BDE-Ersatz
Hallo,
ja, so ist es. ;( Heiko |
Re: CRLab oder FIBPlus als BDE-Ersatz
Willkommen zurück in der Arbeitswelt, Alex. :lol:
Zitat:
|
Re: CRLab oder FIBPlus als BDE-Ersatz
Hallo,
naja, ich hatte schon die Nachfrage: "Bei uns läuft schon MS-Sql. Muss da noch was installiert werden?" Dann sage ich: "Ja, Firebird, läuft aber problemlos parallel". Heiko |
Re: CRLab oder FIBPlus als BDE-Ersatz
Microsoft weiß schon warum sie den SQLServer mit allen möglichen ihrer Produkte bündeln
|
Re: CRLab oder FIBPlus als BDE-Ersatz
Es gibt schon Ausnahmen. Kommt einer daher und sagt : Access muss installiert werden oder auch die BDE, dann würde ich mir Gedanken machen. Beides ist standardmäßig nicht vorhanden. Aber was solls, ist das Programm gut und wichtig, dann kann auch Access auf die Kiste. Die Argumentation kann allerdings auch umgedreht werden : eventuell auftauchende Leute, die immer noch mit MB statt GB rechnen und Firebird aus Platzgründen :???: nicht installieren wollen, die werde ich mal aufklären. :mrgreen: Jetzt die Preisfrage : hat jemand irgendein Programm, das irgendwas speichert ? Telefonauskunft, CD-Sammlung ... ?? Welche DB wird da verwendet ? Wer hat beim installieren auf so was geachtet ? Ich behaupte : keiner. :stupid:
|
Re: CRLab oder FIBPlus als BDE-Ersatz
Hallo,
also eine alte (oder auch immer noch) Telefonauskunft hat mir mal meine Bde zerschossen. Ich arbeite ja (noch) mit Bde + Firebird. Vor etwa 2 Jahren: Kunde: "Programm geht nicht mehr, irgendwas mit, die Bde-Version ist nur für lokale Datenbanken verwendbar" ich: "Nur auf Ihrem Rechner ?" *nachgugg* Kunde. "ja, auf einem anderen geht es" ich: "Haben Sie irgendwas mit dem Rechner gemacht?" Kunde: "Nein" ich: "Irgendwas installiert?" Kunde: "Nein" ich: "Irgend eine CD, Telefon oder so?" Kunde: "ja, ich habe eine Telefon-CD installiert" ich: "aha" Neuinstallation der (SQL)-BDE und beide Programme liefen wieder ;( Die Telefon-CD hat einfach ungefragt die BDE ersetzt, kein merge, neeee. Heiko |
Re: CRLab oder FIBPlus als BDE-Ersatz
Dieses Problem hatte ich auch schon mit MDAC. Eine Anwendung hat Lizenzen für eine Datenbank installiert (Informix) andere Anwendung hat MDAC drübergebügelt und die Lizenzen wurden dabei gelöscht. Und das bei jedem Update (2 mal pro Jahr).
|
Re: CRLab oder FIBPlus als BDE-Ersatz
Und wenn dann noch eine ältere BDE installiert wurde, weil die Telnr ja auf CD 2001 war ist Freude groß, Aber da ist auch Borland der Schuldige, denn es ist technisch kein Problem gewesen die BDE dll´s mit ins Programmverzeichnis zu legen und die vom Programm manuell laden zu lassen. Aber die Zeit ist ehedem vorbei.
Grüße // Martin |
Re: CRLab oder FIBPlus als BDE-Ersatz
Ihr habt also auch irgendeine Datenbank installiert bzw. das zugelassen, ohne groß zu überlegen ? Bei meinen Leuten würde sich da keiner dazu trauen. Es steht sogar ein Absatz dazu in den Lizenzbestimmungen. Also ehrlich ! :warn: :mrgreen: Das meint ja Alex und ich auch : die DB ist egal. Die Enduser wissen wohl nicht mal, was das für eine DB ist die von "ihrem" Programm benutzt wird. Man könnte Kollisionen mit älteren Versionen usw. ja tatsächlich umgehen, indem man so etwas im Programmverzeichnis hinterlegt. Laut M$ "Standard" der auch hier schon öfters propagiert wurde soll man so was aber doch im User-Verzeichnis hinterlegen ? Wie passt denn das ? :gruebel:
Allerdings hat sich auch bei den DAUs rumgesprochen, dass weniger manchmal mehr ist. Verschicke ich eine Demo, dann ist die immer mit FBEmbedded gemacht. Um auch die ganz peniblen zu beruhigen gibt es die Möglichkeit, nur von der CD zu starten, dann wird gar nichts installiert. Ich prüfe also das Startlaufwerk und ist das ein CD-Laufwerk, dann wird beim Programmstart eine globale Variable gesetzt und die Prozeduren zum speichern werten diese aus. Die Gefahr besteht nämlich tatsächlich, das zumindest diejenigen, die schon mal was installiert haben und sich damit was anderes zerschossen haben, ansonsten mein Programm lieber nicht installieren. Dann ist ein Begleitschreiben dabei, was installiert wird, wohin und für die Hobby-Experten, dass keinerlei Änderungen an der Registry gemacht werden (steht auch fett im Disclaimer). Es gibt nämlich welche, die haben den Namen Registry schon mal von Bekanntem gehört. :mrgreen: |
Re: CRLab oder FIBPlus als BDE-Ersatz
Ich als Administrator hab leider keinen Einfluss auf die programme welche installiert werden müssen. Die selbstgeschriebenen verwenden alle FB. Es waren aber 2 Programmpakete, welche beide die MDAC drübergebügelt haben und nicht überprüft haben, ob sie schon vorhanden ist. Beides waren bekannte Softwarehäuser die halt großzügig davon ausgingen, das nur ihr Programm installiert wird.
|
Re: CRLab oder FIBPlus als BDE-Ersatz
Moin,
wer noch FIBplus zu günstigem Preis braucht, der sollte sich beeilen. Die 5er Lizenz ist bereits ausgebucht. Noch ließe sich allerdings was machen. Company-licence ist keine Alternative, weil das eben so nicht geht. Also Einzellizenzen. 8) Jo, das wars. :mrgreen: -> nur PN P.S.: sehe gerade, dass das Thema hier fast 3.000 Hits zu verzeichnen hat. :shock: Die letzten paar Monate war bei Datenbanken in der Größenordnung bei weitem nichts da. Deshalb nochmals : Timeout ist Ende der Woche oder spätestens innerhalb der nächsten Woche. |
Re: CRLab oder FIBPlus als BDE-Ersatz
Hallo Hansa,
ich brauche auch noch FIBplus zu einem günstigen Preis, oder ist der Zug schon abgefahren? Bis bald Chemiker |
Re: CRLab oder FIBPlus als BDE-Ersatz
Zitat:
P.S.: Spielraum wird knapp, weil die Lizenzanzahl bereits über 5 liegt ! Das geht aber auch noch mit mehr. Das ist bereits abgeklärt. 8) Die 5 haben davon aber eventuell überhaupt nichts ! |
Re: CRLab oder FIBPlus als BDE-Ersatz
Hallo Hansa,
Zitat:
Wie soll das ganze ablaufen? Bis bald Chemiker |
Re: CRLab oder FIBPlus als BDE-Ersatz
Das steht alles hier im Thema. PN = persönliche Nachricht. Also nicht den Thread zumüllen, sondern gezielt fragen/antworten.
|
Re: CRLab oder FIBPlus als BDE-Ersatz
Wer hier noch FIBPlus braucht, der hat jetzt wohl letzte Möglichkeit dazu. :P Bzw. kann eben 60 EUR mehr bezahlen, als nötig. Bestellt wiird Freitag, 21.9.2007. Eventuell auch am Montag, 24.9.07. -> nur PN
|
Re: CRLab oder FIBPlus als BDE-Ersatz
So jetzt habe ich Fibplus im Haus und den direkten Vergleich zu IBObjects und IBX.
Mein erster Eindruck: Beim Vergleich mit den anderen beiden Tools benötigen Fibplus Abfragen etwas mehr Zeit. Es kann Zufall sein, aber ich bin am Anfang gleich über 2 Bugs gestolpert. z.B. pFIBDatabase1.GetTableNames(Tiel,System); Ist System false, dann werden nur Usertabellen aufgelistet. Fragt man im folgenden Schritt nach Systemtabellen (System=true), dann erhält man eine leere Liste. Schaut man in den Quelltext dann sieht man, das die Filterclausel Params[0] zugewiesen wird. Bei einer erneuten Abfrage mit System=true wird diese nicht gelöscht. Workaround Filter vor Abfrage manuell löschen. Dann habe ich noch ein kleines Verständnisproblem. Der Parametereditor läßt die Auswahl des Datenprotokolls zu. (NETBUI, TCP/IP). Die getroffene Auswahl wird aber nirgendwo gespeichert. In DbParams wird kein Eintrag generiert. Eine Datenbank läßt sich im Komponenteneditor nur über NETBUI öffnen. Der Dateiname wird in Server und Dateiname gesplittet und dann nicht immer korrekt zusammengesetzt. Gebe ich die Parameter aber nur im Objectinspector ein (Databasename und dann Connected) funktioniert es. Query und Dataset sind im Vergleich etwas gewöhnungsbedürftig. Eine SQL Abfrage ohne Transaction scheint nicht zu gehen. IbObjects ist etwas schneller aber überladen und etwas undurchsichtig. Als größten Mangel sehe ich aber inzwischen die fehlende Compatibilität zu dem Standard Dataset an. Der probitäre Ansatz verhindert den Einsatz von Drittanbieter-Componenten. Gruß Peter |
Re: CRLab oder FIBPlus als BDE-Ersatz
Zitat:
das ist beim FB/IB immer so. Die IBOs werden da bestimmt intern eine starten und du brauchst dich darum nicht zu kümmern. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz