Frage

Meine Anwendung derzeit verwendet Microsoft Access, aber jetzt auf Linux-Boxen gehostet werden kann. Zusätzlich, während von mehreren Computern zugegriffen wird, eine davon kann die Datensätze aktualisieren (wenn sein von anderen Benutzern gelesen werden).

ich auch verlangen, dass die eingebettete Datenbank sollte komplexe SQL-Abfragen unterstützen - wie innerer SQL, schließt sie, etc

.

Ich habe versucht, SQLite , aber viele der vorhandenen Abfragen fehlschlagen, oder repariert werden müssen ( wie in einer einfachen Abfrage Innen aus den Klammern nach beitreten Verwendung war SQLite nicht akzeptabel, und hatte) entfernt werden. Rechts join auch nicht unterstützt wird.

Ich kam über Apache Derby kennen und H2 , würde aber zuerst Ihre wertvolle Meinung bevorzugen.

Edit:

Ich habe vergessen zu erwähnen, dass meine Bewerbung vollständig in Java geschrieben ist.

Edit:

Bei Preset verwende ich Microsoft Access mdb, geteilt auf Netzlaufwerk, so dass DSN Verbindung von Remote-Computern.

Aktualisieren

Ich habe Versuche mit Firebird, und es scheint wirklich sehr gut, Null admin, und SQL-konform. Es ist schnell, und ich hatte keine Probleme in einem der typischen Abfragen ich es versuchen könnte. Ich bin sehr zufrieden mit ihm, und hoffentlich wird es für das Projekt verwenden, für die ich diese Frage gestellt.

Hoffentlich Vorteil Server wird auch gut sein, aber konnte nicht an der Zeit, sie zu überprüfen bekommen. Nach der Überprüfung / Firebird verwendet nicht das Gefühl, keine Notwendigkeit, etwas anderes zu versuchen.

War es hilfreich?

Lösung

Ich denke, es ist Firebird .

Auch CTE sind in Firebird 2.1 unterstützt!

Firebird funktioniert unter Windows, Linux, Mac OS ...

Jaybird Treiber für Java.

Es gibt einige gute Migrationstools von Zugriff auf Firebird:

Andere Tipps

Ich würde einen Blick auf der Advantage Database Server übernehmen (sybase.com). Es läuft auf Windows, Linux und NetWare . Wir haben eine kaufmännische Rechnungswesen / Projektmanagement-Anwendung für die Bauindustrie und geschaltet 6 oder 7 Jahre Advantage. Wir haben mit der Leistung und Unterstützung äußerst zufrieden. Die Kunden sind auch sehr glücklich.

Sie können eine ziemlich detaillierte Beschreibung der Derbys SQL Einhaltung von Standards finden Sie hier: http: // wiki .apache.org / db-Derby / SQLvsDerbyFeatures

Unser Unternehmen ist mit Vorteil auch. Wir kamen an sie von einem XBase Hintergrund haben, aber seit seiner SQL Natur umarmt. Es läuft auf vielen Plattformen (Windows, Linux, NetWare) und hat eine Reihe von Treibern (PHP, ADO, JDBC, ODBC, Crystal), so dass es in fast jeder Umgebung arbeitet, in dem Sie programmieren können.

Dies könnte bei Ihrem Recherche hilfreich sein. Vergleich von relationalen Datenbank-Management-Systemen

Ich persönlich würde vorschlagen, einen ernsthaften Blick auf Firebird nehmen. Es ist Cross-Plattform, verfügt über eine native .NET-Provider und unterstützt die verbindet Sie erwähnen.

Firebird ist die "comptible to SQL" Embedded-Datenbank. Der Motor der integrierten Version ist das gleiche wie die Server-Ausgabe.

Achten Sie darauf, dass mit Firebird Embedded nur ein Client zu einem Zeitpunkt mit der Datenbank verbinden kann, so dass Sie mehrere Verbindung aus dem gleichen Prozess umfassen können, aber nicht von verschiedenen Prozessen verbinden. Dieses Problem wird in Firebird 2.5 behoben und höher.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top