ERLEDIGT
NEIN
NEIN
ANTWORTEN
8
8
ZUGRIFFE
436
436
EMPFEHLEN
-
Hi Leute,
hab da mal ne Frage, wo muss ich meine Access Datenbank im Projekt speichern damit ich, wenn ich eine .exe erstell, Zugriff darauf hab, auch bei anderen rechnern.
Also das die DB sozusagen mit in der exe gespeichert wird sodass ich die exe auf einem anderen Rechner starten kann und das Programm dort auch auf die DB zugreifen kann.
Also sozusagen das die DB lokal auf jedem PC gespeichert ist.
Hoffe Ihr versteh was ich meine.
gruß
-
Weiß keiner wie ich das machen kann?
-
Ich erklär das Problem ml etwas anders. Also ich hab die Datenbank zum Beispiel unter C/Dokumente und EInstellungen/DB/Datenbank.accdb gespecihert. Wenn ich jetzt eine .exe ersetll und die auf einem anderen rechner installiere, dann ist auf dem anderen Rechner unter C/Dokumente und Einstellungen/DB/ die Datenbank logischerweise nciht vorhanden weil sie ja keienr da abgelegt hat. jetzt hab ich mir gedacht das ich die Datenbank in das Projekt rein speichere. und wenn ich dann eine . exe erstell müsste die DB da ja auch enthalten sein. Und im ConnectionString könnte der Pfad dann ja so irgendwie aussehen : Pfad: "Datenbank.accdb" oder vll auch "../Datenbank.accdb" also eine relative pfadangabe. Aber wo genau, also in welchen Ordner im Projekt muss ich die Datenbank ablegen damit die "mit in die .exe" gespeichert wird oder geht das gar nicht? wie kann ich es dann machen? Hab im internet leider nix gefunden
-
Hi
Wo du das Access File in deinem Projekt (ich geh jetzt mal von einem Visual Studio Projekt aus) ist dir überlassen. Erstelle einen Ordner mit einem Namen deiner Wahl und leg da das File rein.
Wichtiger ist das Setup, da du erstellst. Das muss die DB dann auf dem Zielrechner entsprechend ablegen.
Dabei kommt es darauf an, ob die Anwendung benutzerspezifisch (1) ist oder für alle Anwender auf dem Rechner gleich ist (2)
1) Das Setup legt die DB in das AppData-Verzeichnis des Anwenders und dein Programm öffnet auch von da
2) Das Setup legt die DB in das ProgramData-Verzeichnis (Anwendungsdaten von "All Users" unter XP)
Aber noch ein Punkt zu Access
Ist das eine Neuentwicklung oder die die DB schon älter? Wenn ersteres hätte ich an deiner Stelle nicht Access genommen sondern eher Sql Server Express oder Compact EditionGrüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
Hi danke dir für deine Antwort.
Ja richtig hatte vergessen zu sagen das ich mit Visual Studio arbeite.
Also für mich kommt eher (2) in Frage.
Es ist eine Neuentwicklung, wieso würdest du mir deshalb von Access abraten?
-
Microsoft bietet mit dem Sql Server Express und SQl Server Compact fortschrittlichere Technologien als Access, die auch aufeinander aufbauen und sich ähneln.
Access ist eine Insel, die nicht kompatibel ist zum Sql Server. Wenn deine Anwendung also mal wächst und du auf ein ausgewachsenes DBMS angewiesen bist musst du ggf. deine Sql Querys anpassen (Access verwendet andere Funktionen als T-SQL)
Von der Compact Edition hast du es da leichter. Und es werden zu dem die entsprechenden Klassen für .NET zur Verfügung gestellt. Bei Access hast du nur OLE DB und ODBC zur VerfügungGrüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
hmm ok ...
ich würde sagen ich steh noch ziemlich am anfang was programmieren angeht da sind solche tipps immer gut, danke dir.
Wenn ich mit SQL Server arbeiten würde, wäre es dann acuh möglich das ich die Anwendung auf einem Rchner benutze auf dem kein SQL Server installiert ist?
und um noch mal auf dieses Thema zu kommen:
1) Das Setup legt die DB in das AppData-Verzeichnis des Anwenders und dein Programm öffnet auch von da
2) Das Setup legt die DB in das ProgramData-Verzeichnis (Anwendungsdaten von "All Users" unter XP)
ich hab mir (1) noch mal durchgelesen und hab es glaub doch nicht ganz verstanden:
Das Setup erledigt das für mich? also wenn ich die DB im Projekt speichere und dann ein setup erstelle und diesen ausführe legt er mir die DB ins AppData-Verzeichnis (Wo liegt dieses Verzeichnis? )? So hab ich das jetzt verstanden aber ich glaube das ist falsch
oder? Dann müsste ich ja auch den ConnectionString wieder anpassen z.B.: ConnectionString = "...AppData/MeineDatenbank.mdb" oder? könntest du mir das eventuell noch mal kurz erklären?
danke schon mal
gruß Gander
-
Hi
Du musst das Setup schon entsprechend konfigurieren. Es wird noch eine Weile dauern, bis der Computer von allein weiß, was der User will
@AppData: Ausführen --> %AppData% --> Enter
Und da eine Pfadvariable ist kennst du den Pfad.
Es ist mehr oder weniger egal wo du deine DB ablegst. Du solltest nur bedenken, dass ab Windows >= 6.0 eine Anwendung nur noch mit vollen Adminrechten ins Programmverzeichnis schreiben kann. Demnach solltest du dich damit genauer beschäfftigenGrüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
ok vielen dank für deine Hilfe.
Ähnliche Themen
-
GridView in Datenbank speichern
Von gander im Forum .NET Web und KommunikationAntworten: 1Letzter Beitrag: 25.10.10, 07:41 -
Sessions in der Datenbank speichern
Von zzz10 im Forum PHPAntworten: 14Letzter Beitrag: 16.10.10, 17:50 -
XML in Datenbank speichern
Von Radhad im Forum PHPAntworten: 1Letzter Beitrag: 02.06.07, 00:05 -
php Script in Datenbank speichern
Von flipo84 im Forum PHPAntworten: 10Letzter Beitrag: 01.06.07, 11:16 -
JTable in Datenbank speichern
Von Dadu2006 im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 2Letzter Beitrag: 15.05.07, 16:44





Zitieren

Login





