Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Probleme mit via ODBC verknüpften Tabellen

Begonnen von cyorps, August 25, 2010, 11:18:58

⏪ vorheriges - nächstes ⏩

cyorps

Hallo Leute,

ich möchte Tabellen, die in einer Access2000-DB liegen und als Backend fungieren in eine MySQL-DB auslagern und nutzen. Wenn ich nun die Tabellen via ODBC mit dem Datenbankfrontend (ebenfalls 2000) verknüpfe, kann ich in sämtlichen Formularen, die auf diesen Tabellen beruhen keine Dateneingaben machen. Es kommt entweder die Fehlermeldung, dass womöglich das Ende des Recordsets erreicht ist oder das es nicht möglich ist, zu einem neuen Datensatz zu springen. Das Ändern/Hinzufügen/Löschen von Daten direkt in der verknüpften Tabelle funktioniert problemlos. Wenn diese Tabellen aus dem Access-Backend verknüpft sind, habe ich keine Probleme.

Bei den meisten, ähnlich gelagerten Problemen, die ich im Netz finden konnte, war meistens das Problem, dass diese Tabellen keine Primärschlüssel besaßen. Einen Primärschlüssel besitzen alle meine Tabellen. In einem anderen Thema in diesem Forum wurde einmal eingeworfen, dass es vielleicht am fehlenden Timestamp liegen könnte. Wäre das ein Ansatzpunkt, den ich mir genauer betrachten sollte? Was könnte ich sonst noch probieren bzw. nachschauen?

Die MySQL-DB hat die Version 4.1.22. (Das ist die letzte Version, die ich für einen Netware-Server finden konnte.) und ich nutze den ODBC-Connector in der Version 5.1 . Laut MySQL arbeiten beide Versionen zusammen.

Gruß
cyorps

- Peripherie: Win XP Prof; Office 2000
- VBA Copy&Paste; ansonsten Dummy
  •  

database

#1
Hallo,

spät aber dennoch eine Raktion :)

Hast du hier schon mal reingeschaut?
http://dev.mysql.com/doc/refman/5.1/de/myodbc-usagenotes-apptips.html#myodbc-usagenotes-apptips-microsoft-access

Timestamp-Feld: Würde ich auf jeden Fall wärmstens empfehlen, ohne dem geht nix (m.E.)

Zusätzlich zu den Tipps der MySQL Seite würde ich vorschlagen die Tabellen als INNODB-Tabellen zu erstellen um auch die Fremdschlüssel-Technologie zur Verfügung zu haben,
Die Access und JET benutzen aber in 'normalen' MySQL Tabellen (MyISAM-Tabellen) nicht vorhanden ist.

Umwandlen vorhandener Tabellen mit 'ALTER TABLE .....   TYPE=INNODB'
oder eine leere Tabelle mit identischen Definitionen als INNODB ertellen 'CREATE TABLE DeinTAbellenname (Spaltenliste, INDEX(Spalte) ...) TYPE=INNODB'
und dann die Daten der ISAM in diese neue Tabelle holen 'INSERT INTO ...   SELECT * FROM ....

Gemäß MySQL Syntax KANNST du dann noch die ForeignKey-Beschränkungen erzeugen.

HTH

Peter

p.s. Es sind und bleiben halt trotz aller Anpassungsversuche zwei verschieden Welten
  •