Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Leistungsfähige Datenbank für komerzeller einsatz ?? (https://www.delphipraxis.net/47278-leistungsfaehige-datenbank-fuer-komerzeller-einsatz.html)

Gigant02 8. Jun 2005 18:32

Datenbank: ???? • Zugriff über: ????

Leistungsfähige Datenbank für komerzeller einsatz ??
 
Hallo ich suche eine Datenbank die ich mit meinen Programmen verkaufen kann und die nicht allzuteuer ist


das problem ist mysql ist zwar super aber die wird ja nicht gerade billig wenn ich paar programme verkaufe und es kommt raus bin ich dran

das dumme ist ja die software ist auf nee Datenbank angewiesen und nun weiss ich nicht was ich machen soll

zur Datenbank

sie soll eigentlich so leistungsfähig wie Mysql sein und halt sql können

lg, Gigant

Treffnix 8. Jun 2005 18:40

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Zitat:

Zitat von Gigant02
das problem ist mysql ist zwar super aber die wird ja nicht gerade billig wenn ich paar programme verkaufe und es kommt raus bin ich dran

Das ist auch nicht in Ordnung, wenn du nicht erwischt wirst :roll:

Ich meine aber hier mal gelesen zu haben, dass das dich nur etwas kostet, wenn du die DB mitlieferst. Lässt du den Käufer selber für ne DB sorgen und greifst nur darauf zu, ist das glaube ich erlaubt. Da gabs aber auch noch irgendwie ne Beschränkung, dass du nicht ausschließlich auf MySQL arbeiten darfst oder so... Find den Thread leider grad nicht wieder.

UweR 8. Jun 2005 18:50

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Hallo Gigant,

da hast du die Qual der Wahl. Alternativen zu MySQL wären meiner Meinung nach entweder Firebird oder PostgreSQL. Beide sind kostenlos, ausgewachsene SQL-Datenbanken und können alles was mySQL kann und z.T. auch etwas mehr. Für beide gibts native Zugriffskomponenten unter Win32 und .NET-Provider fürs Framework. Beide laufen auch auf allen möglichen Plattformen.

Bei MS-SQL MSDE bin ich mir sicher ob der produktiv eingesetzt werden darf oder ob es da Einschränkungen gibt, wäre aber auch eine Möglichkeit.

Such mal etwas im Forum. Dieses Thema wurde schon öfter erörtert und kriegst bestimmt noch andere Alternativen vorgeschlagen.

jensw_2000 8. Jun 2005 19:06

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Die MSDE ist kostenlos, egal ob kommerziell genutzt oder nicht.
Sie ist nichts weiter als ein beschnittener MS-SQL Server.

Die Einschränkungen im Einzelnen:
- Datenbankgröße (incl. Transaktionsprotokoll max 2GB)
- nur 5 Workerthreads (Wenn also 6 Anfragen gleichzeigig ankommen steht einer in der Warteschlange bis der Erste der 5 Anderen abgeschlossen ist)
- lässt sich imho nicht auf Windows 2000 / 2003 Server installieren
- keine GUI Verwaltungstools (Enterprise Manager, Query Analyzer und Profiler), dafür gibts aber gute Freeware

Spannend wirds, wenn der SQL Server Express (kostenlose Version des SQL Server 2003) rauskommt.
Dann darf die DB ohne Transaktionsprotokol 4 GB groß werden und es sind immerhin 10 Workerthreads verfügbar


Ansonsten kann ich über den MSSQL / MSDE nichts schlechtes sagen. Robost, schnell und sehr gut implementierbar.


Schöne Grüße,
Jens

:hi:

alzaimar 8. Jun 2005 19:09

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Die MSDE (MS-SQL Server) darf ohne Beschränkung eingesetzt werden, Das früher etwas restriktive Lizenmodell wurde stark gelockert. Das Einzige, was Du nicht machen darfst (logischerweise), ist, die MSDE als Paket mit deiner SW weiterzugeben. Soweit ich das weiss, muss sich der Kunde die MSDE selbst saugen. Na gut, ob er das macht, oder Du, und ihm dann als Service die MSDE draufspielst ist egal, aber Bestandteil eines kommerziellen Paketes darf sie nicht sein.

Es gibt noch zwei Beschränkungen, die allerdings mit der MSDE2005 (Yukon) fallen werden: 2GB max Datenbankgröße und max. 5 offene Connections.
Ersteres lässt sich aushebeln, indem man der MSDE eine 2,5GB grosse und leere DB unterjubelt, Letzeres umgeht man durch eine Mittelschicht.

Ich kenn nur die MSDE und denke, das Du ein absolut professionelles Produkt für 0,00 Euro bekommst. Andererseits habe ich nur Gutes von PostgreSQL und Firebird gehört.

mySQL würde ich nicht nehmen (vielleicht die neue 5er). Das ist nämlich keine echte DB, d.h. die Daten sind nicht sicher gespeichert. Bei Stromausfall o.ä. bekommst Du massive Probleme. Sowas passiert dir mit einer richtigen DB eben nicht.

Phoenix 8. Jun 2005 19:47

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Zitat:

Zitat von jensw_2000
Spannend wirds, wenn der SQL Server Express (kostenlose Version des SQL Server 2003)

Ähh. Erstens ist die Express dann die 'kleine' Version vom SQL Server 2005, und zweitens hat Microsoft seit der Cebit öffentlich bekannt gegeben, das auch die Express Edition nicht kostenlos sein wird. Sie wird zwar 'nur' um die 100 € liegen, aber das reicht aus um einige potentielle Kunden abzuschrecken.

jensw_2000 8. Jun 2005 20:03

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Zitat:

SQL Server 2003
schneller getippt als gedacht ...
Zitat:

Express Edition nicht kostenlos
:oops: Das ist jetzt aber absolut neu. Echt ?

Ich erinnere mich HIER vor einiger Zeit gelesen zu haben, das die Express Edition kostenlos bleiben wird, jedoch innerhalb von 30 Tagen eine Registrierung erfolgen muss.

[EDIT]

Habs in der FAQ gefunden
How much does SQL Server Express cost?

SQL Server Express is free to use and redistribute. End-users must agree to the Go Live licensing to distribute this release of SQL Server Express Edition. See http://msdn.microsoft.com/vs2005/golive.

[/EDIT]

Michael_Bayer 8. Jun 2005 20:25

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Mein Tipp: Firebird.
Jedesmal wenn ich die benutze, muss ich vor Freude weinen ;)

Komplett kostenfrei - Server/Client oder lokal mit nur einer DLL - SQL...

alzaimar 8. Jun 2005 20:58

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Ich schliesse mich an: Was ich so über Firebird gelesen habe, rechtfertigt des Bayern Michael's Tränen der Freude, zumal da MSDE2005 doch nicht ganz anonym zu verwenden ist. Vermutlich schickt Dir MS nach 3 Jahren eine Rechnung :zwinker:.

Robert_G 8. Jun 2005 21:16

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Zitat:

Zitat von alzaimar
Ich schliesse mich an: Was ich so über Firebird gelesen habe, rechtfertigt des Bayern Michael's Tränen der Freude, zumal da MSDE2005 doch nicht ganz anonym zu verwenden ist. Vermutlich schickt Dir MS nach 3 Jahren eine Rechnung :zwinker:.

Ich glaube die beiden spielen auch in einer ganz anderen Liga. ;)
@Topic
Eine freie leistungsfähige DB wäre postGreSQL, sozusagen der kleine, standardkonforme Bruder von Oracle. ;)
@SQLSvr2005
Absolut rattenscharfes Teil. SP, Triggers, sogar eigene Datentypen in der Sprache schreiben, die man bevorzugt.
Debugging von deiner App, duch die .Net SP über TSQL und wieder zurück. :love:
Bei einem MutiTier kannst du sogar vom Client durch die Zwischenschichten bis ins @-verseuchte TSQL debuggen...

alzaimar 8. Jun 2005 21:23

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Bin jetzt zu faul, selbst nachzuschauen:
Express Edition <> MSDE 2005 ?
PostGreSQL = kleiner Bruder von Oracle (im übertragenen Sinne, oder wirklich?)

Robert_G 8. Jun 2005 21:29

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Zitat:

Zitat von alzaimar
Express Edition <> MSDE 2005 ?

Es wird keine MSDE mehr geben, MS wird alle Mini versionen ab sofort einheitlich Express nennen.
Zitat:

Zitat von alzaimar
PostGreSQL = kleiner Bruder von Oracle (im übertragenen Sinne, oder wirklich?)

Natürlich nicht, aber es ist doch sehr ähnlich zu Oracle. pgPLSQL kann an auf den ersten Blick sogar mit PL/SQL verwechseln. ;)
Aber Oracle kann keine Tabellen voneinander ableiten :wall:

mschaefer 9. Jun 2005 12:17

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Moin zusammen,

sag mal Robert, hast Du mit postGreSQL unter Windows mehr Erfahrung. Habe bisher immer mit der Installation gekämpft, da die nicht so gut automatisiert war wie bei Firebird. Aber die SQL-Nähe
zu Oracle lässt mich immer mal wieder zu postGreSQL rüberschauen.

Korrigiere mich wenn ich falsch liege: PostGre ist beschränkt auf NTFS-Laufwerke(?)

Grüße // Martin

SarDGer 9. Jun 2005 12:20

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Jep, schliesse mich auch Michael_Bayer und alzaimar an.
Arbeite schon was länger mit Firebird: recht zügig und
stabil. Schaus dir halt an:
http://firebird.sourceforge.net/
Und Wenn du dir auch noch den IB Expert ziehst hast du
auch ein prima allrounder Tool dabei:
http://www.ibexpert.com/

Robert_G 10. Jun 2005 10:44

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Zitat:

Zitat von mschaefer
sag mal Robert, hast Du mit postGreSQL unter Windows mehr Erfahrung.

Ein wenig, da es beruflich keine Option für mich ist, habe ich natürlich nicht so viel Zeit investiert. ;)
Zitat:

Zitat von mschaefer
Habe bisher immer mit der Installation gekämpft

Hmmm... die fand ich eigentlich recht easy... :gruebel:
Zitat:

Zitat von mschaefer
da die nicht so gut automatisiert war wie bei Firebird.

FB installiert doch nur einen Dienst.
pgSQL installiert nciht nur einen, und wenn du willst werden gleich noch Optimierungen an dein System bzw. Autentifizierungseinstellungen vorgenommen. Dauert etwas länger und ist auch mehr zu machen als bei FB, aber wie gesagt, der FB Installer macht ja eigentlich fast nix, wäre also schlimm wenn der dich zu oft fragen würde. ;)
Zitat:

Zitat von mschaefer
Aber die SQL-Nähe zu Oracle lässt mich immer mal wieder zu postGreSQL rüberschauen.

Wenn du sowieso eine OSS-DB (FB) einsetzt, würde ich dir wirklich empfehlen dir pgSQL nicht nur genauer anzusehen sondern gleich darauf zu wechseln. ;)
Es hat keinen embedded Server, aber in jedem anderen Punkt dürfte pgSQL FB voraus sein.
Zitat:

Zitat von mschaefer
Korrigiere mich wenn ich falsch liege: PostGre ist beschränkt auf NTFS-Laufwerke(?)

Würdest du es etwa auf Fat32 laufen lassen? :shock:

velgreyer 10. Jun 2005 10:54

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Wenn ich mich nochmal zum Thema MySQL-Datenbank melden düfte:
Wenn ich ein PHP-Script habe, dass ich verkaufe, es aber MySQL braucht, darf ich es dann nicht verkaufen? Das Script schreibt die Tabellen automatisch (von allein und ohne Anweisung).

http://www.datar.de/s.jpg, vel

alcaeus 10. Jun 2005 11:10

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Zitat:

Zitat von velgreyer
Wenn ich ein PHP-Script habe, dass ich verkaufe, es aber MySQL braucht, darf ich es dann nicht verkaufen?

Ich denke, solang du den Server nicht mit auslieferst, ist das kein Problem. Du setzt ja nur voraus dass jemand den MySQL-Server installiert hat.
Mehr Infos dazu findest du aber sicher auf der Website von MySQL.

Greetz
alcaeus

Bernhard Geyer 10. Jun 2005 11:19

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Zitat:

Zitat von velgreyer
Wenn ich mich nochmal zum Thema MySQL-Datenbank melden düfte:
Wenn ich ein PHP-Script habe, dass ich verkaufe, es aber MySQL braucht, darf ich es dann nicht verkaufen? Das Script schreibt die Tabellen automatisch (von allein und ohne Anweisung).

AFAIK ist für eine kommerzielle Anwendung welche nur mit MySQL läuft auch eine Lizenz von MySQL nötig.
D.h. Du darfst das Produkt verkaufen, es darf aber nur auf eine lizenzierte MySQL-Datenbank eingesetzt werden.

MasterEvil 10. Jun 2005 11:43

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
falls es keine DB mit DBMS sein muss, dann gäbe es da auch noch eine ganz andere alternative:

SQLite

SQLite ist eine Datenbank die nicht installiert werden muss.
Du musst nur mit deinem Programm eine DLL mitliefern und einen DelphiWrapper für die API einsetzen (original ist eine C++ API).
Das ganze läuft dann so, das deine DB eine einzige datei ist, in der alle Tabellen gespeichert werden.
Natürlich kannst du auch einfach für einzelne Tabellen einzelne "DBs" anlegen und hast dann einzelne Dateien.

Performance mäßig ist sie stark vergleichbar mit mySQL, die Entwickler geben in einem Test sogar an sie wäre bis zu 3 mal schneller.
Größenbegrenzungen gibt es mit der 3er Version ebenfalls keine mehr, theoretisch bis zu mehrere TB groß.

Die SQL Syntax wird zu einem großteil unterstützt. Haben ein paar neuere Sachen und es fehlen natürlich auch Dinge.

Das schönste allerdings ist, dass es komplett OpenSource ist, auch für kommerzielle Produkte.

zu den Delphi Wrappern:
es gibt 2 Wrapper die Datasets benutzen und damit ganz normal funktionieren wie mit DBs gewohnt
und es gibt einen Wrapper der sich so verhält wie der mySQL Wrapper in PHP (sprich TabellenAbfragen kommen in einem array aus records zurück).

Ich für meinen Teil bin jedenfalls sehr zufrieden damit und benutze sie als einzelne Projektdateien, da man so ja alles in einem file hat und alles dadrin speichern kann (BLOBs inklusive).

www.sqlite.org

greetz
Steffen

Olli 10. Jun 2005 12:07

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Zitat:

Zitat von jensw_2000
- lässt sich imho nicht auf Windows 2000 / 2003 Server installieren

Das kann nicht sein, da MSDE im WSUS enthalten ist. Und WSUS läuft lt. MS wiederum nur auf W2K Server und W2K3 Server. Daher würden sich beide Aussagen ausschließen ;)

RuX 10. Jun 2005 12:33

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Zitat:

Zitat von alcaeus
Zitat:

Zitat von velgreyer
Wenn ich ein PHP-Script habe, dass ich verkaufe, es aber MySQL braucht, darf ich es dann nicht verkaufen?

Ich denke, solang du den Server nicht mit auslieferst, ist das kein Problem. Du setzt ja nur voraus dass jemand den MySQL-Server installiert hat.
Mehr Infos dazu findest du aber sicher auf der Website von MySQL.

Greetz
alcaeus

sorry für ot, aber da muss ich auch kurz nochmal nachhaken:
was ist wenn man eine kommerzielle client anwendung hätte die aber nicht direkt auf den mysql server zugreift sondern nur mit dem anwendungs-server kommuniziert. Der Anwendugns-Server greift dann lokal auf eine mysql db zu.
Den client dürfte man auch ohne lizenz vertreiben, den server nicht denk ich? oder wie seht ihr das?

franktron 10. Jun 2005 12:51

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Alos hier hab ich mal den Link zur Lizenz

Hier nochmal der genau auszug

Eine Lizenz wird benötigt:

*

Wenn Sie ein Programm, das nicht freie Software ist, mit Code des MySQL-Servers oder der Client-Programme verbinden, die den GPL-Copyrights unterliegen. Das ist zum Beispiel der Fall, wenn Sie MySQL als eingebetteten Server (Embedded Server) in Ihren Applikationen benutzen, oder wenn Sie dem MySQL-Server Erweiterungen hinzufügen, die nicht freie Software sind. In diesen Fällen würden Ihre Applikation bzw. Ihr Code ebenfalls GPL werden, weil die GPL in solchen Fällen wie ein Virus wirkt. Sie können dieses Problem vermeiden, wenn Sie den MySQL-Server mit einer kommerziellen Lizenz von MySQL AB erwerben. Siehe http://www.gnu.org/copyleft/gpl-faq.html.
*

Wenn Sie eine kommerzielle Applikation haben, die NUR mit MySQL funktioniert, und wenn Sie die Applikation zusammen mit dem MySQL-Server ausliefern. Wir betrachten so etwas als Einbindung, selbst wenn es über das Netzwerk geschieht.
*

Wenn Sie eine Distribution von MySQL besitzen und nicht den Quelltext für Ihre Kopie des MySQL-Servers zur Verfügung stellen, so wie es in der GPL-Lizenz festgelegt ist.

mschaefer 10. Jun 2005 13:00

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Moin moin

@Rober_G: Tja ob ich Posgre auf FAT laufen lassen will, das ist eigentlich nicht die Frage. Meine Application läuft bei verschiedenen Kunden auf allen möglichen Oldtimersystemen und FB mach das halt mit. Was mich da erwartet weiss ich halt nicht und dierser Umstand hat mich bei FB gehalten.

Sonst bedanke ich mich für die Hinweise.

Grüße // Martin

Hansa 10. Jun 2005 13:19

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Würde auch sagen : Firebird. Das ist viel einfacher, als viele denken, die Angst vor Datenbanken haben. :stupid: Der Witz ist, daß es nicht mal was kostet. Keine Fat32 - Unterstützung reicht schon, eine Datenbank nicht zu benutzen. Es stehen mehr <= Win98-Systeme im Lande rum, als hier manch einer denkt ! Wer das Gegenteil behauptet hat keine Ahnung und sitzt wohl nur im stillen Kämmerlein. 8)

Und den embedded Server würde ich auch nicht unterschätzen. Für Demo- oder Nur-CD -Versionen ist das einfach genial. Und dann gehts noch weiter mit Linux und .NET. Man nenne mir mal eine DB, die dieses Spektrum abdeckt.

mschaefer 10. Jun 2005 14:21

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Moin on the Rocks,

also sich es so einzurichten, dass man möglichst nahe am Oracle-Syntax arbeiten kann. Das scheint mir durchaus Sinn zu machen. Neben PostGre bietet das insbesodnere das Fyracle-Projekt. Da habe ich schon eine Weile ein Auge drauf. Das aktuelle Release kann man unter Fyracle-Downloadseite finden.

Da hoffe ich jedenfalls bei Gelegenheit mehr zu berichten können.

@Hansa:
Also Win98Se ist doch Genial! Die meisten Viren verweigern schon aus Hochmut das Arbeiten auf diesem antiquierten System, sodass man es sogar problemlos ohne Firewall laufen lassen kann.

Grüße // Martin

Robert_G 12. Jun 2005 17:58

Re: Leistungsfähige Datenbank für komerzeller einsatz ??
 
Mir kam gerade dieser Vergleich von brauchbaren OSS RDBMS bei Delphi.Non-Tech vor die Maus geflattert.
http://www.fabalabs.org/research/pap...SDBMS-Eval.pdf
Man beachte den teilweise "krassen" Abstand von pgSQL bei manchen Features. ;)

@Martin
Fyracle ist aber ziemlich lahm, die bessere Ora-Alternative ist wohl immernoch pgSQL, da es in ungefähr in der gleichen Liga spielt. ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:30 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