Welche Datenbank verwenden?
-
Hallo,
ich möchte eingegebene Kundendaten in eine Datenbank speichern. Die Datenbank soll nur lokal auf dem jeweiligen Rechner vorhanden sein, auf dem meine Anwendung läuft. Ich habe an eine MS Access Datenbank gedacht.
Darf ich eine Access Datenbank mit meinem Programm ausgeben? Falls ja, muss auf dem Zielrechner Access installiert sein, damit die Datenbank angesprochen werden kann. Falls es eine andere, bessere Lösung gibt würde ich mich freuen davon zu erfahren.
-
Access ist keine gute Wahl, da du es nicht mit ausliefern darfst, es aber immer installiert sein muss.
SQL lite oder so gibt es, da muss man nur eine Dll mitgeben und dann hat man eine Datenbank.Ich selbst nutze die MSDE, das ist ein abgespeckter Microsoft SQL Server, aber die alte Version. Ist kostenfrei unter gewissen Voraussetzungen.
-
Reicht für Access die Jet Engine nicht aus für den Zugriff via OleDB?
-
Schau dir mal http://www.firebirdsql.org/ an.
Die Embedded Version muss nicht installiert werden; es reichen DLLs (im Anwendungsverzeichnis).http://www.ibpp.org/ ist ein hübsches C++ Framework zum Zugriff.
-
estartu schrieb:
Ich selbst nutze die MSDE, das ist ein abgespeckter Microsoft SQL Server, aber die alte Version. Ist kostenfrei unter gewissen Voraussetzungen.
??? IMHO ist diese *immer* kostenfrei und nicht nur "manchmal"...
Es gibt von MS zwei kostenlose Alternativen:
- MS SQL 2005 Express-Edition ("richtiger" SQL-Server)
http://www.microsoft.com/downloads/details.aspx?familyid=5B5528B9-13E1-4DB9-A3FC-82116D598C3D&displaylang=en
(gibt es sogar mit den Reporting-Services)- MS SQL Compact Edition (Inprocess-SQL-Server)
http://www.microsoft.com/downloads/details.aspx?FamilyID=7849b34f-67ab-481f-a5a5-4990597b0297&displaylang=en
-
Jochen Kalmbach schrieb:
estartu schrieb:
Ich selbst nutze die MSDE, das ist ein abgespeckter Microsoft SQL Server, aber die alte Version. Ist kostenfrei unter gewissen Voraussetzungen.
??? IMHO ist diese *immer* kostenfrei und nicht nur "manchmal"...
Okay, war von mir schlecht formuliert. Man kann sie nur unter gewissen Voraussetzungen auch einsetzen, da Useranzahl und Datenbankgröße beschränkt sind.
-
nö, auf dem zielrechner muss nicht access installiert sein
-
für eine kleine Anwendung wie Kundendaten speichern ist doch ein MS SQL Server etc. einfach zu "fett".
Ich würde MS Access oder Sqlite nehmen.
MS Access selbst darf natürlich nicht ausgeliefert werden, braucht man auch garnicht. Auf dem Fremd-PC muss nur die Runtime-Version installiert werden und die ist kostenlos und darf verteilt werden (MDAC 2.8, JET 4.0). Auf der Microsoft-Downloadseite sind diese nur mit Gültigkeitsprüfung downloadbar, also einfach nach MDAC googlen, irgendwo liegts ganz sicher frei downloadbar herum.In MFC geht der Zugriff auf die Datenbank sehr einfach mit DAO (Klasse CDaoDatabase) oder ADO (einfach mal googlen).
SQLite ist "kundenfreundlicher" denn auf dem Fremd-PC muss nichts installiert werden. Die sqlite.dll in das Programmverzeichnis kopieren ist ausreichend.
Einfach mal nach "MFC sqlite wrapper" googlen, z.B. auf Codeproject findet man fertige Klassen mit denen man auf SQLite-DBs zugreifen kann.
-
Ich danke euch allen für die Antworten
Ihr habt mir sehr geholfen
-
Dieser Thread wurde von Moderator/in Unix-Tom aus dem Forum MFC (Visual C++) in das Forum Datenbanken verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.