2

Wir entwickeln gerade eine Client-Server-Software (in C#, Net 2.0), die von der Stange verkauft werden kann. Das Produkt befindet sich in der medizinischen Domäne.Welche Datenbank sollte bei der Entwicklung einer Client-Server-Anwendung als Einzelhandelsprodukt verwendet werden?

Kann jemand die bestmögliche Datenbank für die folgenden Bedingungen vorschlagen:

  1. sollte in der Lage sein, es zu den Kunden kostenlos zu verteilen.
  2. Kunden sollten in der Lage sein, auch Bilder zur Datenbank hinzuzufügen.
  3. Geringer Platzbedarf.
  4. Schnell, stabil, sicher und stürzt nicht ab.

Wir arbeiten an MSSQL 2005 Express und Mysql 5.0. Jede bessere Datenbank, die Sie vorschlagen können?

Antwort

2

Eine gute Idee wäre, Ihre Software mit NHibernate zu schreiben, da das Framework viele verschiedene Datenbanken mit nur einer Änderung der Konfigurationseinstellungen unterstützt. Der Grund, warum ich dies vorschlage, ist, dass Kunden bereits eine Datenbanklizenz haben und sie möchten, dass Ihre Software diesen Datenbanktyp verwendet.

Also ich schlage vor, Ihre App flexibel zu halten, während eine Standard-Datenbank-Empfehlung bietet.

+1

Es ist sehr gut möglich, dass die Clients keine Datenbanklizenz haben, da sie alle nicht technische Personen sind. Auch ich mochte den Vorschlag von NHibernate. Aber ich habe gehört, dass es einen großen Speicherbedarf hat und langsamer ist als tatsächlich mit der Datenbank verbunden ist. – Kalpak

+0

@Kalpak: Ein ORM ist eine zusätzliche Schicht zwischen Ihrer App und der Datenbank. Es verbraucht daher mehr Speicher und ist langsamer als die direkte Interaktion mit der Datenbank. Es ist ein Engineering-Kompromiss, aber nicht unbedingt ein schlechter für Ihre Anwendung. – MusiGenesis

+0

Ich denke, es kommt darauf an ... höhere Programmiersprachen wie C#, Java usw. sind viel langsamer als C und C++, aber Sie haben eine leichtere Wartung Ihrer Anwendung, und Sie haben Vertrauen, dass die Leute, die den Compiler entwickelt haben so gut oder besser als bei Code-Optimierung auf einer niedrigeren Ebene. Gleiches gilt für NHibernate oder ORM. Ich nehme an, dass sie bei der Optimierung von Abfragen und Datenzugriffen zu 90% besser sind. – Zoidberg

1

Sie können SQLite auschecken. Es erfüllt alle Ihre Kriterien. Es hat auch die erstaunliche Fähigkeit, plattformübergreifend verwendet zu werden. Es ist die Datenbank der Wahl für iPhone-Entwicklung, und es wird oft auch in Windows-und Linux-Umgebungen verwendet!

+0

Kann es GB-große Datenbanken unterstützen? Da die Kundschaft, mit der wir uns beschäftigen, nicht technisch ist. Sie laden die Bilder direkt von der Digitalkamera in die Anwendung hoch. Sie ändern nicht die Größe. Daher halten wir die Datenbank für zu groß. – Kalpak

+0

Weiß nicht, wie groß Sie thiking sind, aber hier ist eine Perspektive auf die Größe: http://stackoverflow.com/questions/784173/what-are-the-performance-characteristics-of-sqlite-with-yy-large -database-files/786146 # 786146 – Eric

Verwandte Themen