Wie kann ich mein C# Form Programm mit einer Datenbank oder einem Jimdo Webspace verbinden?

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Vielleicht noch etwas weiter ausgeholt.

Du hast ja (laut Frage) bereits eine (Forms)Anwendung erstellt. Als Teil dieser Anwendung hast du mit Sicherheit Methoden (heißen auch Funktionen) geschrieben. Also etwas wie, wenn mein Knopf A gedrückt wird, geschieht folgendes und so weiter. Vielleicht hast du deine Methoden auch in Klassen gekapselt (Also mehrere syntaktisch zusammenhängende Methoden zusammen gruppiert [sag ich mal :)]).

Was du jetzt willst, (also mit einer Datenbank kommunizieren) muss nun ebenfalls in solche Methoden geschrieben werden. Dafür sind grundsätzlich mehrere Schritte notwendig.

  • Du musst dich irgendwie an der Datenbank anmelden(Gehen wir mal davon aus das Sie schon existiert :))
  • Du musst die Daten in die Datenbank schreiben und auch wieder auslesen
  • Du musst dich von der Datenbank abmelden.

Jetzt wäre es natürlich ziemlich mühsam, wenn du nun genau wissen müsstest wie welche Bytes gesendet und Empfangen werden müssen, damit man mit einer Datenbank kommunizieren kann. Dazu kommt das dies für jede Datenbank unterschiedlich ist. Daher haben (eigentlich alle) Hersteller von diesen DBMS (Datenbank Management Systemen) solche oben bereits beschriebenen Klassenbibliotheken geschrieben, die dir den Zugriff auf die jeweiligen Datenbanken erleichtern.

Wohlgemerkt erleichtern nicht abnehmen :)

Was musst du also mit dieser Programmbibliothek machen? Du musst Sie in dein Projekt einbinden. Wenn du Visual Studio verwendest, geht das am leichtesten wenn du einen rechten Mausklick auf Hinzufügen -> Referenzen machst und in dem Fenster (das daraufhin erscheint) die richtige zuvor installierte Programmbibliothek auswählst.

Damit hast du sozusagen deinem Projekt mal gesagt, nimm diese Datei mit wenn du dich selbst erzeugst und du kannst die Methoden der Bibliothek dann auch in deinem Projekt verwenden, als hättest du Sie selber da rein geschrieben.

Damit du die Methoden in deinem Projekt verwenden kannst, musst du zuvor (ich empfehle dir einen eigene Klasse für den Datenbankzugriff anzulegen) ein Import Statement in die Klasse einfügen.

using MySql.Data.MySqlClient;

(So in die Richtung sollte das aussehen)

Gut ich sagte zu Beginn du musst dich mit deiner Datenbank in Verbindung setzen. Dafür benötigst du natürlich einen Benutzernamen und auch ein Kennwort. Normalerweise wird zur Verbindung ein sogenannter ConnectionString benötigt. Was genau das ist, und wie dieser für MySql aussieht kannst du denke ich mit etwas Internetrecherche eruieren.

Der ConnectionString muss der Connection (Im Falle MySql heißt die wahrscheinlich MySQLConnection oder so) übergeben werden und danach die Funktion Open ausführen. Ist der ConnectionString OK und die Datenbank Online und übers Netzwerk (oder lokal) erreichbar geht darauf hin der Status deiner MySQLConnection auf Open ansonsten Exception.

Danach musst du MySQLCommandos vorbereiten, indem du passende SQL Statements schreibst. Auch hier empfehle ich dir wieder das Internet (ich habe schon den Rahmen gesprengt, dass kann ich aber wirklich nicht mehr erklären :))

Hast du dein Statement, musst du es noch ausführen (Kann nur Ausgeführt werden mit einer offenen gültigen Connection siehe oben).

Zum Abschluss hier noch ein Beispiel, ich habe es nur überflogen aber ich glaube die wichtigsten Punkte gesehen zu haben :)

http://www.codeproject.com/Articles/43438/Connect-C-to-MySQL

Viel Erfolg!

Aim4FameClan 
Fragesteller
 24.04.2016, 02:14

Wow vielen Dank!
Werde ich morgen gleich mal versuchen! 😊

0

Installier dir ne MySQL auf deinem Server oder leg dir eine mysql db auf deinem webspace account an. Lade dir den .NET Connector von MySQL (http://dev.mysql.com/downloads/connector/net/) und dann sollte dem nichts mehr entgegenstehen.

Aber vorsicht: Eventuell kann man den mysql server auf dem webspace nicht von außen erreichen. Manche machen das aus Sicherheitsgründen.

Woher ich das weiß:Berufserfahrung – Berufserfahrung
Aim4FameClan 
Fragesteller
 18.04.2016, 17:47

Okay Danke erstmal, aber wie funktioniert das jetzt? Ich blick da nicht durch... (Habs mir runter geladen, installiert und da is nicht mal ne Anwendung xD)

0
TheQ86  18.04.2016, 20:53
@Aim4FameClan

Sicher ist das keine Anwendung. Das ist eine Klassenbibliothek. Die musst du einbinden und die enthaltenen Klassen dafür nutzen um deine Anwendung zu schreiben.

0

Da brauchst du eine API auf deinem Webspace. Dafür gibt es teilweise templates, da ein entwerfen einer sicheren API nicht gerade trivial ist.

Aim4FameClan 
Fragesteller
 18.04.2016, 17:48

Danke, aber ich hab davon jetzt vllt 2 Wörter verstanden.. xD

0