maffi
Goto Top

MySQL Datenbank in MSSQL importieren

Hallo,

ich habe eine MySQL Datenbank und würde Sie gerne in MSSQL EXPRESS importieren, ich nutze das "Microsoft SQL Server Management Studio", habe vorher den "Connector/ODBC 5.3.4" installiert, und unter Datenquellen eine DSN hinzugefügt, klicke ich nun im MSSQL Server Management Studio auf die erstellte DBASE und sage unter Tasks/Daten Importieren, wähle dann ".NET Data Provider for ODBC" gebe den DNS Namen an, klicke auf Weiter wähle "SQL Server Native Client 10" aus, wähle meine dbase aus, dann sehe ich die Tabellen aus meiner MySQL Datenbank, wählle die zu importierende Tabelle aus, daruhin generiert er mir folgende Code

CREATE TABLE [dbo].[temp] (
[temp] varchar(20) NOT NULL,
[info] varchar(5) NOT NULL
)


klicke ich nun auf weiter auf kommt die Meldung

ERROR [42000] [MySQL][ODBC 5.3(a) Driver][mysqld-5.6.16]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"temp"' at line 1 (myodbc5a.dll)


Und hier komme ich nicht weiter. Kennt sich jemand damit aus?

Content-ID: 272261

Url: https://administrator.de/contentid/272261

Ausgedruckt am: 25.11.2024 um 23:11 Uhr

ukulele-7
ukulele-7 19.05.2015 um 07:56:28 Uhr
Goto Top
Die Fehlermeldung kommt vom MySQL Server, du versuchst also scheinbar das CREATE Statement auf dem MySQL auszuführen. Ich glaube aber du willst das auf dem MSSQL Server ausführen und dort wäre die Syntax korrekt.
Maffi
Maffi 19.05.2015 um 20:50:34 Uhr
Goto Top
Ich gehe den import Wizad durch, und gebe als Quelle den MySQL Server an, und als Ziel den MSSQL Server an.

hier mal eine kurze Fotostrecke

http://pichoster.net/FQQ
http://pichoster.net/FQh
http://pichoster.net/FQ3
http://pichoster.net/FQ6
http://pichoster.net/FQ2
http://pichoster.net/FQ0
ukulele-7
ukulele-7 20.05.2015 um 07:38:59 Uhr
Goto Top
Probier mal am besten die Ziel-Tabelle zunächst per Management Studio anzulegen.

Was kann man denn in Bild 4 unter Vorschau sehen?
Maffi
Maffi 20.05.2015 um 09:05:18 Uhr
Goto Top
Wenn ich die Tabelle vorher anlege, kommt der gleiche Fehler, unter Vorschau kommt der Fehler, wenn ich auf weiter gehe, und den Import troztdem druchführe kommt der folgende Fehler:

http://pichoster.net/FQB

Gibt es denn vllt. eine bessere oder eine andere Methode, eine MySQL Datenbank mit allen Daten in MSSQL zu importieren?
Maffi
Maffi 20.05.2015 um 09:18:36 Uhr
Goto Top
Ich habe grade eine andere Anletung gelesen, dazu muss der SQL Agent gestartet werden, wenn ich diesen starte kommt die Meldung

Fehler beim StartServiceCtrlDispatcher-Objekt (Fehler 0).

vllt. liegt hier das problem?
ukulele-7
ukulele-7 20.05.2015 um 09:55:23 Uhr
Goto Top
Also auf jedenfall sollten beide Datenbanken vorher laufen und über ihre jeweiligen Admin Tools ansprechbar sein.

Die Fehlermeldungen sind beide eindeutig von MySQL, das heißt ein hier angewandtes Statement läuft nicht oder der ODBC Provider ist hier das Problem. Eventuell gibt es für deine MySQL Version noch einen anderen ODBC Treiber oder bekannte Bugs.

Der Unterschied der hier eventuell zum tragen kommt sind möglicherweise die eckigen Klammern um die Spaltennamen [temp] und [info]. Die würde ich auf jedenfall in MSSQL verwenden aber ich glaube MySQL nutzt nur ´temp`, eventuell kannst du das in den Statements manuell anpassen.

Auch könntest du versuchen über das SQL Management Studio einen Verbindungsserver auf deine MySQL DB anzulegen (auch hier kommt wieder der ODBC Treiber zum Einsatz) und die Daten erstmal direkt von der MySQL DB abzufragen. Natürlich kann man hier auch relativ schnell einen INSERT INTO zieltabelle SELECT * FROM quelltabelle machen wenn die Spalten übereinstimmen.