SELECT * FROM // c[_]~~

Avatar

ein IT-Blog, mehr nicht!

Von MSSQL via ODBC zu MySQL

Mal merken: Um zwei verschieden Datenbanksysteme miteinander zu verbinden, also wenn man unabhängig vom DBS die Datenstrukturen ansprechen will, ist ODBC das Zauberwort, zumindest wenn man sich auf Windows-Maschinen bewegt. Ganz einfach ist es, wenn das eine DBS sich MSSQL nennt, denn dann steht die Funktion sp_addlinkedserver zur Verfügung, die eben eine solche Verbindung etablieren kann. Formal und für MySQL sieht das so aus:

EXEC
master.dbo.sp_addlinkedserver @server = N'MYSQL', @srvproduct=N'MySQL', @provider=N'MSDASQL', @provstr=N'DRIVER={MySQL ODBC 3.51 Driver} ;SERVER=127.0.0.1;DATABASE=database; USER=root; PASSWORD=secret; OPTION=3'
GO
 
SELECT *
FROM openquery(MYSQL,'select * from table')
GO
 
Exec sp_dropserver MYSQL, droplogins
GO

Jetzt müssen nur noch anständige Fehlermeldungen generiert werden, denn mit [Microsoft][ODBC SQL Server Driver]Timeout kann ich persönlich nicht viel Anfangen und sämtliche Lösungsversuche, wie Timeout vom SQL Server hochsetzten (was logisch wäre), oder den ODBC-Timeout in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\Version\Engines\ODBC\ConnectionTimeout erhöhen (geh ich auch noch mit) schlagen fehl. Oder liegt es an mir und ich muss zwischen den Zeilen lesen!?

Jup, soll muss es wohl sein, denn das Timout kommt nicht vom DBMS, sondern vom Query Analyser!! - Naja sei’s drum - Anfrage händisch geschrieben, Problem gelöst und das ist die Hauptsache. :)

Jan Häußler Von >>
Abgelegt unter >>
Tags >>
  • insgesamt: 888 //   heute: 2 //   zuletzt: 7. January 2009
Gelesen >>
No Comments, Comment or Ping
Reply to “Von MSSQL via ODBC zu MySQL”

Suche