Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Firebird und ODBC (Zugriff von CrystalReports)... Sehr lahm (https://www.delphipraxis.net/121674-firebird-und-odbc-zugriff-von-crystalreports-sehr-lahm.html)

alzaimar 2. Okt 2008 09:04

Datenbank: Firebird • Version: 1.5 • Zugriff über: ODBC oder OLEDB

Firebird und ODBC (Zugriff von CrystalReports)... Sehr lahm
 
Moin,

Wir haben hier eine CrystalReports-Engine, die Daten aus einer Firebird 1.5 Datenbank holen soll.
Es wird ein Datenblatt ausgedruckt. Das besteht aus einem Record einer Mastertabelle und einigen Einträgen in Kindtabellen (8 Stück mit je 3-8 Zeilen).

Eine Lösung in Delphi mit Fastreport und den IBQueries zeigt das Datenblatt in maximal 100ms an. Schneller geht es kaum.

Nun sind die Queries aber in dieser CrystalReport-Datei, sodas CR also eine eigene Verbindung zu einer Firebird-DB aufbaut. Hier dauert das Verbinden und Laden jedoch 2.5-3.5 Sekunden, also 20x so lange. Eine Analyse ergab, das der ODBC-Treiber die alleinige Ursache ist. Ich benutze den OpenSource ODBC-Treiber von Sourceforge in der Version 1.2

Ich habe die Version 2.0 des IBPhoenix-Treibers probiert und der ist schon recht fix (Der o.g. Zugriff dauert dann 300ms). Die Version wird allerdings als 'Beta' bezeichnet.

Frage:
1. Hat jemand Erfahrungen mit der Version 2.0 von IBPhoenix?
2. Hat jemand vielleicht eine BESSERE Idee bezüglich der Verbindung zwischen Firebird und CrystalReports?

Elvis 2. Okt 2008 09:38

Re: Firebird und ODBC (Zugriff von CrystalReports)... Sehr l
 
Zitat:

Zitat von alzaimar
Frage:
1. Hat jemand Erfahrungen mit der Version 2.0 von IBPhoenix?

Ja, hat ein paar Macken. Aber ie hat der 1.2 auch. Denn beide sind (genau wie ältere Oracle Treiber) nur ODBC Class 2 oder so. IOW: Für viele Dinge brauchst du eine DSN und kannst oft nicht direkt über einen reinen ODBC ConnectionString drauf.
Im Falle von Firebird reicht es einfach eine DSN zu haben, die nur den Treiber enthält. Alle weiteren Dinge kannst du dann im ConenctionString angeben.
Bleistift: DSN=DeineDSN;DBQ=DeinServer:DeineDB;Role=DeineRoll e

Was ich ein bissel doof finde, ist dass der Treiber ständig nach Logindaten fragt, wenn man keine angibt. (Firebird 2.1 nutzt dann Windows authentication, und das ist was ich hier nutze)

Zitat:

2. Hat jemand vielleicht eine BESSERE Idee bezüglich der Verbindung zwischen Firebird und CrystalReports?
sorry, nein. Bin abslut kein Reportfritze, da versuche ich mich immer drum zu drucksen. Das gute alte "Wegloben" hat mir hier gute Dienste geleistet. ;-)

mkinzler 2. Okt 2008 10:09

Re: Firebird und ODBC (Zugriff von CrystalReports)... Sehr l
 
http://www.ibphoenix.com/main.nfs?a=...=ibp_int_comps

alzaimar 2. Okt 2008 11:03

Re: Firebird und ODBC (Zugriff von CrystalReports)... Sehr l
 
Hi,

Danke, ich werde die Liste mal durchgehen (müssen). Irgendwelche persönlichen Erfahrungen?

mkinzler 2. Okt 2008 11:07

Re: Firebird und ODBC (Zugriff von CrystalReports)... Sehr l
 
Nein, bisher hat der ODBC-Treiber des FireBird-Projektes gereicht. In der Liste befinden sich ja auch DBProvider als Testversion oder als kostenlose Liteversionen. Diese sollten besser geeignet sein

alzaimar 2. Okt 2008 11:16

Re: Firebird und ODBC (Zugriff von CrystalReports)... Sehr l
 
Hallo Elvis, deine Antwort habe ich eben erst gelesen. Danke dafür. Würden sich die 'Macken' bei normalen SELECT's äußern?

Die von mkinzler gepostete Liste sollte reichen, eine für den Kunden optimale (=schnelle und stabile) Lösung zu finden.

Elvis 2. Okt 2008 11:25

Re: Firebird und ODBC (Zugriff von CrystalReports)... Sehr l
 
Die Macken sind einfach dass du ohne eine DSN, bei manchen connection parametern keine Verbindung hinkriegst.
Welche habe ich gerade nicht im Kopf. Aber Windows authentication geht nicht ohne eine DSN, die den Treiber enthält.
Die SQLs sollten problemlos durchlaufen wenn die Verbindung einmal steht.
Was du IMMER beachten solltest ist das Character Set. "None" macht bei allem außerhalb des 7Bit ASCII Satzes Ärger.

alzaimar 2. Okt 2008 11:27

Re: Firebird und ODBC (Zugriff von CrystalReports)... Sehr l
 
Och, das sollte eh immer über eine DNS laufen. Danke auch für den CharSet-Tipp.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:52 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz