lucksn Geschrieben 19. Januar 2008 Geschrieben 19. Januar 2008 Guten Tag. Ja ich bin neu hier. Ja das ist mein erster Post. Ja ich habe die Sufu. benutzt. Ich habe folgendes Problem und bitte vorher schon um Nachsicht für etwaige dumme Fragen meinerseits, da ich C# gerade erst lerne... Und Rom wurde ja auch nicht an einem Tag erbaut. Ich mache derzeit ein Praktikum zum FI AW stelle ich mich ned allzu dumm an gehört die dazugehörige Ausb. im Sommer 2008 mir. Meine Aufgabe ist bisher recht gut gelaufen und ich kam gut vorran. Das Programm das ich programmieren soll erfasst bestimmte Daten und überträgt diese, per PHP-Script, an eine mySQL Datenbank. Da dies aber alles eine bestehende Internetverbindung benötigt soll ich auch noch eine Sicherung anlegen, in Form einer Access Datenbank. Das Programm selber ist in C# geschrieben. Meine Frage ist (mit den bisherigen Ergebnissen kam ich nicht zurecht) wie ERSTELLE ich die DATENBANK!!! aus C# heraus, wie ich die Tabellen befülle habe ich zu Hauf gefunden, aber wie rufe ich ab, das wenn die Daten erfolgreich an die mySQL Datenbank übertragen wurden, die Access Tabellen wieder entleert werden. Ich hoffe das mir hier jemand helfen kann und wünsche noch ein erholsames Wochenende. Stefan Zitieren
Amstelchen Geschrieben 20. Januar 2008 Geschrieben 20. Januar 2008 soll die datenbank lokal oder auf einem entfernten system angelegt werden? zeichne mal bitte ein grobes schema, wie die ströme der daten sein sollen. s'Amstel Zitieren
lucksn Geschrieben 20. Januar 2008 Autor Geschrieben 20. Januar 2008 Hallo. Die Datenbank soll lokal auf der Festplatte gespeichert werden und beim ersten "senden" der Daten erstellt werden. Sind die Daten erfolgreich in die mySQL Datenbank auf dem Server eingetragen werden kann die Access Datenbank, bzw ihr Inhalt gelöscht werden. Sofern nicht, soll beim nächsten Senden die neuen Daten in die Access Datenbank eingetragen werden und wieder versucht werden die gesamte Datenbank zu der mySQL Datenbank zu senden. Leider weiß ich gerade gar nicht was du genau mit dem Shema meinst, tut mir Leid. Stefan Zitieren
flashpixx Geschrieben 20. Januar 2008 Geschrieben 20. Januar 2008 Hallo, also tut mir leid, aber das ist doch nicht so gut, denn: normalerweise laufen der Webserver inkl PHP Interpreter (ich gehe davon aus, dass ein Webserver eingesetzt wird), irgendwo in Netz als Serverdienst, wo nicht jeder dran rum spielen kann. Die mySQL Datenbank liegt entweder auf dem gleichen oder auf einem anderen System, aber nur der Webserver darf darauf connecten. Der Anwender ruft in seinem Browser die Seite auf und trägt die Daten ein. D.h. wenn der Webserver down ist, kommt schon mal keine Seite, wenn das DBMS down ist, sollte das Webfrontend in PHP eine entsprechende Fehlermeldung generieren. So wie sich das anhört, läuft bei Dir lokal der PHP Interpreter inkl. Webserver. Also ich würde das wenn so bauen, dass du per C# Programm direkt die DB ansprichst oder das ganze wirklich als reine Webanwendung in PHP machst HTH Phil P.S. Bitte vielleicht wirklich mal ein Bildchen malen, wo was läuft und wie die Daten laufen bzw laufen sollen Zitieren
lucksn Geschrieben 20. Januar 2008 Autor Geschrieben 20. Januar 2008 Hallo. Ich kann derzeit leider ja nur nach meinen Vorgaben gehen, diese sind das die Daten per PHP_script an die mySQL Datenbank übertragen werden und zur SICHERHEIT die Daten in eine Access Datenbank lokal gespeichert werden. Das einzige Problem das ich da eigentlich habe, ist ja der Befehl um aus C# heraus eine Datenbank zu erstellen und zu bearbeiten. Das ist alles. Denn der Weg zur mySQL Datenbank auf den Server, der ist schon einwandfrei geregelt, bzw es funktioniert und wird wie verlangt gespeichert. UNd halt das was hier anscheinend als schlechte Lösung beschrieben wird, wie schreibe ich aus der Access DB auf die mySQL Db. Bildchen, naja .. ich hab mich erstmal ans beschreiben versucht: C#-Programm -> ruft ein -> PHP-Script auf -> speichert die empfangenen Daten in eine -> mySQL Datenbank Dazwischen soll nun, bei eine negativen Response der Datenbank (ergo keine bestehende Verbindung) das ganze lokal in eine dann frisch erstellte Access DB gespeichert werden. Zitieren
flashpixx Geschrieben 20. Januar 2008 Geschrieben 20. Januar 2008 Ich kann derzeit leider ja nur nach meinen Vorgaben gehen, diese sind das die Daten per PHP_script an die mySQL Datenbank übertragen werden und zur SICHERHEIT die Daten in eine Access Datenbank lokal gespeichert werden. Das mit der Sicherheit ist schon klar herausgekommen! Das einzige Problem das ich da eigentlich habe, ist ja der Befehl um aus C# heraus eine Datenbank zu erstellen und zu bearbeiten. Such Dir das passende OLE Objekt heraus und erzeuge damit die Accessdatenbank UNd halt das was hier anscheinend als schlechte Lösung beschrieben wird, wie schreibe ich aus der Access DB auf die mySQL Db. Wenn Du direkten Zugriff auf die mySQL Datenbank aus Access heraus brauchst, dann musst Du die Tabellen z.B. per ODBC direkt verbinden. Dafür benötigst Du zuerst den passenden ODBC Treiber, musst diesen als DSN (Benutzer / System) einrichten, einen Connection einrichten und dann die Tabellen in Access verknüpfen. Mein Vorschlag, eine direkte Verbindung z.B. per ODBC zu mySQL, falls die Verbindung fehlschlägt schreibst Du z.B. per DOM die Daten in ein XML File, wenn Du das nächste Mal das Programm startest, schaust Du nach ob was in der XML Datei steht bzw. ob diese existiert und überträgst die Daten in die Datenbank (aber auch hier im Multiuserbetrieb zu beachten, wie ist das wenn mehrere Leute Daten eintragen, in welche Reihenfolge die Daten hinein geschrieben werden müssen). Ansonsten überträgst Du direkt die Daten in die Datenbank. HTH Phil Zitieren
lucksn Geschrieben 20. Januar 2008 Autor Geschrieben 20. Januar 2008 Hallo. Hey danke, genau so eine Hilfe habe ich mir soweit erhofft. Somit kann ich es Morgen immerhin mal probieren wie ich es hinbekommen kann. Und Notfalls dann ja immernoch meinen Chef fragen. Falls ichw eitere Problem, bzw den Lösungsansatz fertig habe, melde ich mich einfach mal. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.