經由過程SQLServer 2008 操作 MySQL的辦法。本站提示廣大學習愛好者:(經由過程SQLServer 2008 操作 MySQL的辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是經由過程SQLServer 2008 操作 MySQL的辦法正文
數據庫測試情況
1. SQL Server 2008
2. MySQL 5.1.36
Database: Test
Table: TestTable
創立MySQL 測試表
CREATE TABLE `testtable` (
`id` int(11) DEFAULT NULL,
`name` varchar(50) DEFAULT NULL,
`age` int(11) DEFAULT NULL
)
創立Link Server
上面來創立一個與MySQL交互的鏈接(相似Oracle 的DBLink),在SQL Server 治理器中右鍵Server Objects 目次下的Linked Servers 點擊“New Linked Server”:
Linked server 鏈接稱號
Server Type 選擇“Other data source”
Provider 選擇“Microsoft OLE DB Provider for ODBC Drivers”
Product name 填寫MySQL 主機地址
Provider String 填寫 Driver={MySQL ODBC 5.1 Driver};Server=ServerName;Database=myDB;
User=myUserName;Password=myPassword;Option=3;
也能夠經由過程TSQL 直接創立:
EXEC master.dbo.sp_addlinkedserver
@server = N'MYSQLLINK',
@srvproduct = N'localhost',
@provider = N'MSDASQL',
@provstr = N'Driver={MySQL ODBC 5.1 Driver};Server=localhost;
Database=test;User=root;Password=root;Option=3;'
EXEC master.dbo.sp_addlinkedsrvlogin
@rmtsrvname = N'MYSQLLINK',
@useself = N'False',
@locallogin = N'localhost',
@rmtuser = N'root',
@rmtpassword = N'root'
創立完成後便會看到下圖中的鏈接:
操作MySQL 數據庫
在SQL Server 中經由過程OPENQUERY 函數對MySQL 停止操作,該函數包括兩個參數:第一個為已創立的鏈接稱號,第二個為SQL 查詢,它將前往對Linked Server 的讀取或修正操作。以下操作示例:
OPENQUERY ([LinkedServer], 'SELECT * FROM [RemoteTable]')向TestTable 中拔出測試數據:
insert into openquery(mysqllink,'select * from testtable')
select 1,'Peter',30;查詢數據:
select * from openquery(mysqllink,'select * from testtable');
修正數據:
update openquery(mysqllink,'select * from testtable')
set name='Jone' where id=1;
刪除數據:
delete from openquery(mysqllink,'select * from testtable')
where id=1;
相干參考材料
http://dev.mysql.com/downloads/mirror.php?id=376346
http://www.connectionstrings.com/mysql#p21
作者: Gnie