Autor |
Beitrag |
WIng2005
      
Beiträge: 49
|
Verfasst: Fr 10.03.06 17:43
Hallo,
Ich habe mit Firebird einen Server laufen. Wenn ich unter Delphi (habe mal die 2006 Arch. Trail geladen) Habe ADOConnection, ADOQuery und DBGrid auf meinem Formular platziert.
So...wenn ich nun den Connection-String festlege, muss ich einen Treiber wählen....WELCHEN?
Hatte mal mit dem ZEOS-Kram rumgemacht, kam aber nichtmal über die Installation heraus. Ständig Compilerfehler. Ergo, wenns denn funzt, würde ich die erstmal weglassen wollen.
Ist denn ADO generell empfehlenswert, wenn Firebird genutzt wird?
MFG
Steffen
P.S: Die Suchfunktion habe ich genutzt...aber nix gefunden.
|
|
MisterBum83
      
Beiträge: 245
Erhaltene Danke: 2
WIN XP
Delphi 6
|
Verfasst: Fr 10.03.06 17:59
Meines Wissens nach sind die ADO-Komponenten nur im Zusammenhang mit MS Access zu gebrauchen.
Eigentlich kannst du die Standard-Komponenten verwenden...
|
|
mikhal
      
Beiträge: 109
Windows 10 Professional 64-Bit
VS 215 CE, Delphi 10.1 Berlin Professional
|
Verfasst: Fr 10.03.06 19:45
Bin vor einiger Zeit über die Mercury Database Objects gesolpert und habe sie mal ausprobiert. Trotz Status Release Candidate hinterließen sie einen guten Eindruck.
Grüße
Mikhal
_________________ Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
|
|
MagicAndre1981
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 10.03.06 19:48
Du brauchst einen OLEDB-Provider um auf den Firebird mit ADO zugreifen zu können. Aber die verfügbaren Provider sidn mieß. Nimm leiber ein ordentliche Kompo-Sammlung.
|
|
Grenzgaenger
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 10.03.06 20:47
wenn du über ODBC eine datenbank ansprechen willst, ist ADO eine möglichkeit. eine andere ist die BDE. beide nehmen sich nicht viel, ausser dass die BDE extra installiert werden muss und nicht mehr weiter entwickelt wird. wenn du auf ODBC verzichten kannst, ist ein nativer DB zugriff eigentlich immer zu empfehlen.
|
|
WIng2005 
      
Beiträge: 49
|
Verfasst: Fr 10.03.06 23:29
Erstmal vielen Dank für die vielen Antworten.
Eigentlich bin ich noch auf der Suche nach Grundsätzlichem.
Ich will eine Anwendung schreiben, welche Daten in einer Datenbank ablegt auf welche max 5 Clients zugreifen solllen.
Da ich diese in einem Unternehmen testen will, muss sie auch komerziell kostenlost einsetzbar sein.
Aus diesem Grund bin ich bei Firebird gelandet. War schon ein Stück weit gekommen, bis ich hier gelesen
habe, dass Paradox (die hatte ich bis dahin genutzt) nich wirklich empfehlenswert sein soll.
Ich benötige mehrere Tabellen. Diese können bis mehrere 10T Einträge (Erstzteillisten) enthalten. Ein Datenverlust wäre dabei
nicht wirklich gut. Andere Tabellen enthalten Rechnungsdaten, welch unter keinen Umständen verloren gehen dürfen.
Gibt es denn eine andere Möglichkeit Firebird anzusprechen, als über ZEOS-Komponenten
(wie gesagt, ich bekomm sie einfach nicht compiliert)?
Oder gibt es eine besser ansprechbare Datenbank (freeware, komerziell einsetzbar) als Firebird?
MFG
Steffen
|
|
mikhal
      
Beiträge: 109
Windows 10 Professional 64-Bit
VS 215 CE, Delphi 10.1 Berlin Professional
|
Verfasst: Sa 11.03.06 08:17
Firebird ist schon eine gute Wahl, versuch dazu mal die bereits oben vorgeschlagenen Mercury Database Objects als Ersatz für die ZEOS. Es gibt seit dem 28.02.2006 einen Release Candidate 2, der sich in meiner BDS 2006 ohne weitere Anpassungen sofort compilieren und mit drei Komponentensätzen installieren ließen. Die Komponenten sind recht zahlreich und decken eigentlich alles ab, was dir so im Betrieb mit Firebird begegnet.
Grüße
Mikhal
_________________ Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
|
|
alzaimar
      
Beiträge: 2889
Erhaltene Danke: 13
W2000, XP
D6E, BDS2006A, DevExpress
|
Verfasst: Sa 11.03.06 10:42
Ach, geht der INTERSOLV-ODBC-Treiber nicht? Der dürfte doch bei Borland mit dabei sein. Habs noch nicht probiert, wäre ja schade, denn die BDE ist Müll, die würde ich nicht mehr empfehlen.
_________________ Na denn, dann. Bis dann, denn.
|
|
Grenzgaenger
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 11.03.06 11:49
kleiner tipp: FIREBIRD ODBC
|
|
WIng2005 
      
Beiträge: 49
|
Verfasst: Sa 11.03.06 20:03
Hallo,
habe mal nach dem MDO RC2 gesucht:
sourceforge.net/foru....php?forum_id=544842
Wers mal ausprobieren. ansonsten versuch ich mal mein Glück mit dem:
www.rrze.uni-erlange...sysoft.shtml#content
Ich glaub ich hab noch nen langen Weg vor mir.
Für weiter Hilfen (und die bisher) bin ich sehr dankbar.
MFG
Steffen
|
|
WIng2005 
      
Beiträge: 49
|
Verfasst: Sa 11.03.06 23:31
Habe es mal hinbekommen....aber:
Kann es sein, dass ich den Server selbst gar nicht brauche?
Ich connecte mich ja einfach auf die Datei, und nicht auf den Server..?...!
MFG
Steffen
|
|
mikhal
      
Beiträge: 109
Windows 10 Professional 64-Bit
VS 215 CE, Delphi 10.1 Berlin Professional
|
Verfasst: So 12.03.06 11:30
Natürlich benötigst du den Server! Du connectest dich immer über den Server mit der Datenbank, über die Angabe der Datenbank-Datei teilst du dem Server lediglich mit, welche Datenbank du verwenden möchtest. Der Server wird immer der einzige sein, der direkt auf die Datenbank-Dateien zugreifen wird, alle anderen (sei es ein Client-Tool oder eine Programm, das auf die Datenzugreifen will) müssen ihre Anfragen an den Server stellen, dieser verarbeitet sie und stellt anschließend dem anfragenden Programm die Ergebnisse zur Verfügung.
Die Mercury Database Objects stellen dir lediglich eine Schnittstelle zum Server zur Verfügung. Wenn du die ZEOS Komponenten anschaust, bieten sie die Möglichkeit via mitgelieferter DLL's direkt auf Datenbanken einiger Datenbanken zuzugreifen (MySQL, PostgreSQL), es handelt sich hier um in einer DLL zusammengefaßte "Embedded-Versionen" oder Client-Installationen; bei allen anderen Datenbanken wird grundsätzlich auf installierte Server und installierte Clients zurückgegriffen. Die Client-Installation entfällt, wenn du auf der Maschine den Server installiert hast (Einzelplatz- oder Entwickler-Installation).
Grüße
Mikhal
_________________ Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
|
|
WIng2005 
      
Beiträge: 49
|
Verfasst: So 12.03.06 21:42
Also ich habe mit Friebird eine Datenbank erstellt und mit Database Workbench (trial) darin Tabellen und einen Datensatz angelegt.
Wenn ich nun Firebird herunterfahre, die Datei umbenenne und den neuen Namen der MDODatabase zuweise, funzt es trotzdem. Mache ich dabei grundlegend was falsch?
Meine Komponenten sind die MDODatabase, ein MDOQuery eine Datasource und ein DBGrid. Wei er dann noch eine Transaktion zugewiesen haben wollte also auch ein MDOTransaction.
MFG
Steffen
|
|
mkinzler
      
Beiträge: 4106
Erhaltene Danke: 13
Delphi 2010 Pro; Delphi.Prism 2011 pro
|
Verfasst: So 12.03.06 21:48
Du hast höchswahrscheinlich den embedded-Client installiert, welcher winw Single-User Serverfunktionalität für lokale Datanbanken bereitstellt.
_________________ Markus Kinzler.
|
|
mikhal
      
Beiträge: 109
Windows 10 Professional 64-Bit
VS 215 CE, Delphi 10.1 Berlin Professional
|
Verfasst: So 12.03.06 22:00
Wenn ich den Datenbank-Dienst herunterfahre (fbserver.exe), erhalte ich eine Fehlermeldung: unavailable Database. Sobald ich den Dienst wieder starte, funktioniert alles wieder einwandfrei. Ich nehme an, daß du die Verbindung zu deiner Datenbank gelöst hast, deine Instanz (Datenbank-Datei) umbenannt hast und dann dein Programm erneut gestartet hast. Der Datenbank-Server (also das Programm oder der Dienst) wurden aber nicht gestoppt.
Deshalb bleibt meine Aussage aus meinem letzten Post: Du meldest dich bei deinem Firebird-Server an und teilst ihm über den Namen der Datendatei lediglich mit, welche Datenbank du verwenden möchtest.
Grüße
Mikhal
_________________ Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
|
|
WIng2005 
      
Beiträge: 49
|
Verfasst: So 12.03.06 22:21
Naja, nicht ganz: Wenn ich mit Firebird eine DB erstelle (Kunden.fdb), dann Firebird deinstalliere (restlos entferne), kann ich von Delphi aus auf meine DB zugreifen, indem ich einfach die MDODatabase auf die Datei verlinke (wofür ist dann der Server?). Wie kann ich mich auf den Server connecten, ohne die Datei selbst einzubinden?
MFG
Steffen
|
|
mkinzler
      
Beiträge: 4106
Erhaltene Danke: 13
Delphi 2010 Pro; Delphi.Prism 2011 pro
|
Verfasst: So 12.03.06 22:34
Welchen Client hast du installiert? Ich wiederhole meine Vermutung von oben. Ändere den Connectionstrimg von Bsp. c:\daten\test.fdb auf 127.0.0.1:c:\daten\test.fdb. damit zwingst du den (embedde Client) nicht den "eingebauten" server zu verwenden, sondern einen "externen" Server (hier auch lokal) zu verwenden.
_________________ Markus Kinzler.
|
|
WIng2005 
      
Beiträge: 49
|
Verfasst: Mo 13.03.06 00:30
Jupp, geht auch so. Aber ist das nicht ein weinig Blödsinn? So muss jeder Client die Struktur des Servers kennen.
Ist es nicht irgendwie möglich, einfach nur eine DB Namens "Kunden" auf der IP anzusprechen, also ohne Pfad?
MFG
Steffen
|
|
Lemmy
      
Beiträge: 792
Erhaltene Danke: 49
Windows 7 / 10; CentOS 7; LinuxMint
Delphi 7-XE10.1, VS 2015
|
Verfasst: Mo 13.03.06 12:21
Hi,
das nennt sich alias und kann ab Fb 1.5 eingerichtet werden (\Firebird\aliases.conf)
GRüße
Lemmy
|
|
WIng2005 
      
Beiträge: 49
|
Verfasst: Di 14.03.06 00:12
Super Tip, vielen Dank. Werde mir das gleich mal anschauen.
MFG
Steffen
|
|