通過sql server 連接mysql


圖文:通過sql server 連接mysql

 

1、在SQL SERVER服務器上安裝MYSQL ODBC驅動;

驅動下載地址:http://dev.mysql.com/downloads/connector/odbc/

2、安裝好后,在管理工具-ODBC數據源-系統DSN-添加-選擇 MYSQL ODBC 5.3 Unicode DRIVER-完成

 

會跳出來MYSQL連接參數

Data Source Name:數據源名稱

Decription:描述,隨便寫

Server:MYSQL服務器的IP

Port:MYSQL的端口,默認的是3306.可以改的.

User:連接賬號(在mysql上授權的賬號,同時給予相應權限)

Password:密碼

Database:選擇鏈接的數據庫

填好之后,點下test.成功了則會如圖跳出提示框.

 

3,打開SQL數據庫,找到鏈接服務器.創建鏈接服務器,大家都會的,所以我就把參數發一下.如圖,常規選項的其他的就不用填了.確定就行了.

這里,需要注意:訪問接口要選擇“Microsoft OLE DB Provider for ODBC Drivers”。

數據源:選擇之前已創建好的ODBC接口。

然后在安全性中 選擇使用此安全上下文創建連接 填寫MYSQL 數據庫的登陸名和密碼

 

4、sql 語句使用

復制代碼
 --查詢
SELECT * FROM OPENQUERY(MYSQL_DBLINK, 'select * from tableName where id=''1''')

--修改
UPDATE OPENQUERY(MYSQL_DBLINK, 'select * from tableName where id=''1''') set cname='測試'
--or
UPDATE OPENQUERY(MYSQL_DBLINK, 'select * from tableName ') set cname='測試' where id=1

--添加
INSERT INTO OPENQUERY(MYSQL_DBLINK, 'select * from tableName where 1=0')values ('xx','xx','xx');  

--刪除
DELETE  FROM OPENQUERY(MYSQL_DBLINK, 'select * from tableName where id=''1''')

復制代碼

  **【注意】在查詢的時候如果出現: 鏈接服務器 'MYSQL_DBLINK' 的 OLE DB 訪問接口 'MSDASQL' 返回了對列 '[MSDASQL].cname' 無效的數據。 

需要在MYSQL ODBC數據源上設置符合你的編碼格式,如圖:

 

5、OPENQUERY用法

對給定的鏈接服務器執行指定的傳遞查詢。該服務器是 OLE DB 數據源。OPENQUERY 可以在查詢的 FROM 子句中引用,就好象它是一個表名。OPENQUERY 也可以作為 INSERT、UPDATE 或 DELETE 語句的目標表進行引用。但這要取決於 OLE DB 訪問接口的功能。盡管查詢可能返回多個結果集,但是 OPENQUERY 只返回第一個。

Transact-SQL 語法約定

語法

OPENQUERY ( linked_server ,'query' )

參數

linked_server

表示鏈接服務器名稱的標識符。

'  query  '

在鏈接服務器中執行的查詢字符串。該字符串的最大長度為 8 KB。

備注

OPENQUERY 不接受其參數的變量。

在 SQL Server 2000 和更高版本中,OPENQUERY 不能用於對鏈接服務器執行擴展存儲過程。但是,通過使用四部分名稱,可以在鏈接服務器上執行擴展存儲過程。例如:

EXEC SeattleSales.master.dbo.xp_msver

權限

任何用戶都可以執行 OPENQUERY。用於連接到遠程服務器的權限是從為鏈接服務器定義的設置中獲取的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM