通過(guò)SQLServer 2008 操作 MySQL的方法
1. SQL Server 2008
2. MySQL 5.1.36
Database: Test
Table: TestTable
創(chuàng)建MySQL 測(cè)試表
CREATE TABLE `testtable` (
`id` int(11) DEFAULT NULL,
`name` varchar(50) DEFAULT NULL,
`age` int(11) DEFAULT NULL
)

創(chuàng)建Link Server
下面來(lái)創(chuàng)建一個(gè)與MySQL交互的鏈接(類似Oracle 的DBLink),在SQL Server 管理器中右鍵Server Objects 目錄下的Linked Servers 點(diǎn)擊“New Linked Server”:

Linked server 鏈接名稱
Server Type 選擇“Other data source”
Provider 選擇“Microsoft OLE DB Provider for ODBC Drivers”
Product name 填寫MySQL 主機(jī)地址
Provider String 填寫 Driver={MySQL ODBC 5.1 Driver};Server=ServerName;Database=myDB;
User=myUserName;Password=myPassword;Option=3;

也可以通過(guò)TSQL 直接創(chuàng)建:
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'
創(chuàng)建完成后便會(huì)看到下圖中的鏈接:
操作MySQL 數(shù)據(jù)庫(kù)
在SQL Server 中通過(guò)OPENQUERY 函數(shù)對(duì)MySQL 進(jìn)行操作,該函數(shù)包含兩個(gè)參數(shù):第一個(gè)為已創(chuàng)建的鏈接名稱,第二個(gè)為SQL 查詢,它將返回對(duì)Linked Server 的讀取或修改操作。如下操作示例:
OPENQUERY ([LinkedServer], 'SELECT * FROM [RemoteTable]')向TestTable 中插入測(cè)試數(shù)據(jù):
insert into openquery(mysqllink,'select * from testtable')
select 1,'Peter',30;查詢數(shù)據(jù):
select * from openquery(mysqllink,'select * from testtable');
修改數(shù)據(jù):
update openquery(mysqllink,'select * from testtable')
set name='Jone' where id=1;

刪除數(shù)據(jù):
delete from openquery(mysqllink,'select * from testtable')
where id=1;
相關(guān)參考資料
http://dev.mysql.com/downloads/mirror.php?id=376346
http://www.connectionstrings.com/mysql#p21
作者: Gnie
- SqlServer2008 數(shù)據(jù)庫(kù)同步的兩種方式(發(fā)布、訂閱使用方法)
- sqlserver2008查看表記錄或者修改存儲(chǔ)過(guò)程出現(xiàn)目錄名無(wú)效錯(cuò)誤解決方法
- win2008 r2 安裝sqlserver 2000問題的解決方法
- SQLServer日志清空語(yǔ)句(sql2000,sql2005,sql2008)
- SQLServer2005與SQLServer2008數(shù)據(jù)庫(kù)同步圖文教程
- SQLserver 2008將數(shù)據(jù)導(dǎo)出到Sql腳本文件的方法
- SQL Server 2008 評(píng)估期已過(guò)怎么解決
相關(guān)文章
sqlserver2008鎖表語(yǔ)句詳解(鎖定數(shù)據(jù)庫(kù)一個(gè)表)
鎖一個(gè)SQL表的語(yǔ)句是SQL數(shù)據(jù)庫(kù)使用者都需要知道的,下面就將為您介紹鎖SQL表的語(yǔ)句,希望對(duì)您學(xué)習(xí)鎖SQL表方面能有所幫助2013-12-12SQL server 2008 數(shù)據(jù)安全(備份和恢復(fù)數(shù)據(jù)庫(kù))
備份和恢復(fù)數(shù)據(jù)庫(kù)對(duì)于數(shù)據(jù)庫(kù)管理員來(lái)說(shuō)是保證數(shù)據(jù)安全性的一項(xiàng)重要工作。SQL server 2008提供了高性能的備份和恢復(fù)功能,可以實(shí)現(xiàn)多種方式的數(shù)據(jù)庫(kù)備份和恢復(fù)操作,避免了由于各種故障造成的損失而丟失數(shù)據(jù)2012-08-08SQL SERVER 2008 CTE生成結(jié)點(diǎn)的FullPath
SQL SERVER 2008 使用CTE是經(jīng)常的事兒,有時(shí)我們想存儲(chǔ)一些冗余數(shù)據(jù),像每個(gè)結(jié)點(diǎn)的FullPath。2011-10-10SQL Server 2008打開輸入sa密碼提示無(wú)法登陸數(shù)據(jù)庫(kù)的解決方法
與 SQL Server建立連接時(shí)出現(xiàn)與網(wǎng)絡(luò)相關(guān)的或特定于實(shí)例的錯(cuò)誤,這篇文章主要介紹了SQL Server 2008打開輸入sa密碼提示無(wú)法登陸數(shù)據(jù)庫(kù)的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07SQL Server2008 R2 數(shù)據(jù)庫(kù)鏡像實(shí)施手冊(cè)(雙機(jī))SQL Server2014同樣適用
這篇文章主要介紹了SQL Server2008 R2 數(shù)據(jù)庫(kù)鏡像實(shí)施手冊(cè)(雙機(jī))SQL Server2014同樣適用,需要的朋友可以參考下2017-04-04安裝SQL Server 2008時(shí) 總是不斷要求重啟電腦的解決辦法
本篇文章是對(duì)安裝SQL Server 2008時(shí),總是不斷要求重啟電腦的解決辦法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06使用Sqlserver事務(wù)發(fā)布實(shí)現(xiàn)數(shù)據(jù)同步(sql2008)
事務(wù)的功能在sqlserver中由來(lái)已久,因?yàn)樽罱谧鲆粋€(gè)數(shù)據(jù)同步方案,所以有機(jī)會(huì)再次研究一下它以及快照等,發(fā)現(xiàn)還是有很多不錯(cuò)的功能和改進(jìn)的。這里以sqlserver2008的事務(wù)發(fā)布功能為例,對(duì)發(fā)布訂閱的方式簡(jiǎn)要介紹一下操作流程,一方面做個(gè)總結(jié)備份,一方面與大家進(jìn)行一下分享和交流2013-03-03