我一直在使用ODBC驅動程序與下面的供應商串插入錯誤服務器的MySQL
DRIVER={MySQL ODBC 5.1 Driver};SERVER=HOST;USER=uid;PASSWORD=pw;OPTION=3
我的鏈接服務器被命名爲MYSQL創建鏈接的服務器。如果我做的選擇和更新,因爲它的工作方式正確
SELECT * FROM OPENQUERY(MYSQL,'SELECT * FROM DatabaseName.Table')
UPDATE OPENQUERY(MYSQL, 'SELECT * FROM DatabaseName.Table where test=0') SET test=1
當我嘗試用下面的語法
INSERT OPENQUERY(MYSQL,'SELECT Column1, Column2, Column3 from DatabaseName.Table WHERE 1=0') VALUES (10,20,30)
我有這個以下錯誤
The OLE DB provider "MSDASQL" for linked server "MYSQL" could not INSERT INTO table "[MSDASQL]". Commands out of sync; you can't run this command now.
解決創造了這樣我的鏈接服務器: EXEC master.dbo.sp_addlinkedserver @服務器= 'MYSQL',@ srvproduct = 'MySQL的', @供應商= 'MSDASQL',@ provstr ='DRIVER = {MySQL的ODBC 5.1 驅動}; SERVER = HOST;端口= 3306; USER = UID; PASSWORD = PW; OPTION = 3; DATABASE = MYDB; – 2012-04-27 09:34:28