Anbindung von MySQL funktioniert nicht!

  • VB.NET

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von Braxel.

    Anbindung von MySQL funktioniert nicht!

    Hallo Forum,

    ich stehe vor der Aufgabe, eine Client-Server Applikation neu zu schreiben, die aus einer Access 97 Anwendung als Frontend und einer MySQL Datenbank besteht.

    In VB6 war das ganz einfach: ADO-DataControl auf das Formular fallen lassen, ODBC-Datenquelle für MySQL erstellen, Datengrid mit auf das Formular, an die ADO-Quelle binden, fertig! Keine einzige Zeile Code ist notwendig und funktioniert alles prima.

    Jetzt funktioniert gar nichts mehr. Die 90 Tage Trial von Visual Studio geladen (weil es mit der Express Version ja nicht geht), .NET-Connector und MyODBC installiert und die gleiche Nummer wie unter VB6 versucht. Ergebnis:

    Via ODBC fliegen mir jede Menge Fehlermeldungen um die Ohren, dass er angeblich die Spalteninformationen nicht aubrufen kann, mit dem .NET Connector kriege ich zwar mein DB-Grid mit Daten angezeigt, jedoch funktionieren weder die Bearbeitung der Daten, noch das Hinzufügen oder Löschen. Es kommt keine Fehlermeldung, aber die Gegenprobe auf der Kommandozeile des MySQL-Servers zeigt, dass die Daten überhaupt nicht angefasst wurden.

    Wenn mir hier jemand sagen könnte was da los ist, wäre das toll. Wenn jemand das gleiche versucht, nämlich eine MySQL-Datenbank mit einem VB2008 Frontend zu bedienen, würde ich mich über Erfahrungen freuen. Mich beschleicht nämlich das dumpfe Gefühl, dass VB2008 ähnlich ausgereift ist wie Windows Vista und dass ich mir die 1000 Euro für die VS2008 Lizenz besser spare und stattdessen bei VB 6 bleibe. Allerdings habe ich da die Befürchtung, dass die ganze Kiste dann unter Vista und dessen Nachfolger nicht mehr läuft. Mit der Access 97 Verion (s.o.) habe ich jetzt schon unter Vista Probleme.

    Freue mich über jeden erhellenden Hinweis.

    Danke im Voraus,

    Schallschlucker.
    Hi!

    Erste Suchfunktion verwenden und im Tipps und Tricks Bereich schauen!
    [Datenbanken] MySQL-Datenbanken mit VB.net/VB2005

    Warum sollte das mit der Express Edition nicht funktionieren?
    Ich würde dir übrigens empfehlen auf VB2005 Express zu setzen. Weniger Fehler (mit Service Pack), weniger CPU-Belastung und .net3.x willst du vermutlich sowieso nicht verwenden. Die Downloads für VB2005 Express findest du im Tipps und Tricks Breich.

    Express oder nicht...

    Hallo Andy,

    danke für deine schnelle Antwort. Bei VB2008 bin ich mittlerweile soweit, dass Änderungen gespeichert werden, wenn ich auf den Speichern-Button des Datensatznavigators klicke. Das implizite Speichern, so wie es von Access standardmäßig gemacht wird, wenn man zum nächsten Datensatz navigiert, funktioniert irgendwie nicht, ist mir aber im Moment auch egal. Viel blöder ist, das die Datumsfelder irgendwie garnicht mehr gehen, aber da bin ich schon über ein paar Postings gestolpert, die werde ich wohl nochmal in Ruhe studieren müssen.

    Wie ich drauf komme, dass das in der Express-Version nicht geht? - Wenn ich eine neue Datenquelle erstelle, kriege ich MySQL gar nicht erst als Option angeboten; in der Trial-Version geht das. Gibt es diese Einschränkung in VB2005 Express etwa nicht? Muß ich mir wohl dringend mal ansehen.

    Und .Net 3.x ist auch Käse? Schade... jetzt wollte ich beim Neuschreiben der Applikation wenigstens ein bißchen Future-Compatible sein - wieder nix.

    Hätte nie gedacht, dass ein popliger Datenbank-Client so'n Stress machen kann - vor 10 Jahren war das irgendwie mit weniger Problemen verbunden.

    Schsch
    Hi!

    .net 3.5 ist nicht sinnvoll, wenn du es nicht benötigst. Bei Sachen, die cool aussehen sollen lass ich mir WPF einreden, für ein Datenbank-Frontend eher nicht.

    Zum Thema Express oder nicht:
    Bei der Vollversion lassen sich MySQL-Datenbanken übers VB "managen", bei der Express Edition scheinbar nicht. Das ist aber nicht wirklich von Bedeutung, weil die "händische" Programmierung meist sauberer ist als autom. generierter Code - der ConnectionString (siehe Link, oben) funktioniert, sobald du den DB-Treiber installiert hast. Ich weiß nicht inwieweit VB2008 Administation von MySQL-Datenbanken anbietet, es gibt dafür aber auch wieder kostenlose Lösungen, wie MySQL Administator von der offiziellen Seite oder PHPMyAdmin für HTTP/PHP.
    Hallo Andy,
    nach der Installation des MySQL Connector, habe ich wie bei Tipps und Tricks von dir beschrieben,
    die MySql Komponenten hinzugefügt (Verweis und Namespace (4 Häkchen gesetzt)).
    Leider bekomme ich jetzt sobald ich "Imports" schreibe, immer einen Syntaxfehler.

    Hast du vielleicht noch ein Tipp was ich falsch mache (ist mein erster Versuch eine MySQL Datenbank,
    von meinen Webserver zu verbinden :rolleyes: ).

    VB6 ist einfach besser...

    Hi,

    sieht tatsächlich so aus, als würde VB2005 weniger Stress machen. Allerdings finde ich die ganze manuelle Codierung der DB-Anbindung doch eher lästig. Außerdem finde ich, dass die VB.net - Programme einfach viel zu zäh laufen, VB6 ist dagegen ein richtiger Rennwagen. Was die "future compatibility" angeht, experimentiere ich gerade mit VB6 Porgrammen unter Linux mit der WINE-Emulation; WINE soll man ja angeblich sogar unter Mac OS X zum Laufen kriegen. Wenn dann Windows Vista ff. nicht mehr mit VB6 will, stehe ich wenigstens nicht im Regen... (und irgendwie schreien eh grad alle um mich rum "ich will auch'n Mac!")

    PS: Von wegen DB-Management; kennst du den DBDesigner von FabForce? Sehr schick für meinen Geschmack - und kost nix!
    Was für ein Fehler kommt denn bei dem Imports? Und was genau schreibst du hinter das Imports?


    VB6-Programme laufen erstaunlich gut unter Wine, jedoch leider auch nicht alles. Durch den Intel-Prozessor in MACs gibts jetzt auch Wine für Mac, es gibt aber auch ein anderes, Wine-ähnliches Programm nur für Mac. Mir fällt der Name aber nicht ein. Die Emulation von Windows sollte aber nicht das Ziel sein... Wenn du Interessa an plattformübergreifenden Dingen hast, würd ich z.B. an C++ und GTK denken.

    .net-Programme (.net 1.x und 2.0) sind auch unter Linux und Mac lauffähig, mit Hilfe von Mono. Und das ganze besser funktionierend als Wine ;)
    Ich würde nicht zwingend sagen, dass .net komplett fürn Ar... ich, bin aber selbst eher VB6-Fan.

    DBDesigner ist gut um Datenbanken zu designen, verwende ich selbst, für die Administration aber nicht ;)

    Quellcode

    1. Imports MySql.Data.MySqlClient
    2. Imports MySql
    3. Imports MySql.Data


    In diesen Zeilen wird jedesmal der Befehl "Imports" blau unterstrichen und in der Fehlerliste als "Syntaxfehler" bezeichnet.

    Zur Info: VB Express 2005 und auch bei 2008