J'ai une base MySQL avec une table 'table1' et une colonne 'test'
J'ai un SQL Server 2005
J'ai créé un serveur lié sur SQL Server selon le script suivant
EXEC master.dbo.sp_addlinkedserver @server = N'IPGKTOT', @srvproduct=N'IPGKTOT', @provider=N'MSDASQL', @datasrc=N'IPGKTOT'
Ce serveur lié utilise un connecteur (MySQL ODBC 5.1) ODBC lié à une base MySQL. Le connecteur marche.
Voici les commandes que je lance dans mon requêteur sur SQL Server :
SELECT * FROM OPENQUERY (IPGKTOT, 'SELECT test FROM test.table1')
commande qui me retourne bien le contenu de la table1 de MySQL
INSERT OPENQUERY (IPGKTOT, 'SELECT test FROM test.table1') VALUES(15)
Ne nmarche pas et retourne le message suivant :
Msg 7399, Level 16, State 1, Line 1
Le fournisseur OLE DB "MSDASQL" du serveur lié "IPGKTOT" a rapporté une erreur. Le fournisseur n'a donné aucune information quant à cette erreur.
Msg 7343, Level 16, State 2, Line 1
Le fournisseur OLE DB "MSDASQL" du serveur lié "IPGKTOT" n'a pas pu INSERT INTO la table "[MSDASQL]". Erreur*: fournisseur inconnu.
Après pas de recherche, j'ai toruvé des posts où cette suantaxe semble marché, mais pas chez moi.
Quelqu'un a-t-il une idée ou déjà réalisé ça ?
Partager