通過SQL語(yǔ)句訪問遠(yuǎn)程數(shù)據(jù)庫(kù)
1、得建立鏈接服務(wù)器: --刪除鏈接服務(wù)器if exists(select * from master.dbo.sysservers where isremote=0 and srvname='ITSV') exec sp_dropserver 'ITSV','droplogins'--創(chuàng)建連接服務(wù)器exec sp_addlinkedserver 'ITSV','','SQLOLEDB','10.2.10.211'exec sp_addlinkedsrvlogin 'ITSV','false',null,'retailBI','retail'2、建立完鏈接服務(wù)器后,便可通過其來任意操作遠(yuǎn)程的數(shù)據(jù)庫(kù)啦。--查詢示例 select * from ITSV.數(shù)據(jù)庫(kù)名.dbo.表名 --PKselect * from sys.key_constraints where object_id = OBJECT_ID('TB')--FKselect * from sys.foreign_keys where parent_object_id =OBJECT_ID('TB')--創(chuàng)建鏈接服務(wù)器 exec sp_addlinkedserver 'ITSV ', ' ', 'SQLOLEDB ', '遠(yuǎn)程服務(wù)器名或ip地址 ' exec sp_addlinkedsrvlogin 'ITSV ', 'false ',null, '用戶名 ', '密碼 ' --查詢示例 select * from ITSV.數(shù)據(jù)庫(kù)名.dbo.表名 --導(dǎo)入示例 select * into 表 from ITSV.數(shù)據(jù)庫(kù)名.dbo.表名 --以后不再使用時(shí)刪除鏈接服務(wù)器 exec sp_dropserver 'ITSV ', 'droplogins ' --連接遠(yuǎn)程/局域網(wǎng)數(shù)據(jù)(openrowset/openquery/opendatasource) --1、openrowset --查詢示例 select * from openrowset( 'SQLOLEDB ', 'sql服務(wù)器名 '; '用戶名 '; '密碼 ',數(shù)據(jù)庫(kù)名.dbo.表名) --生成本地表 select * into 表 from openrowset( 'SQLOLEDB ', 'sql服務(wù)器名 '; '用戶名 '; '密碼 ',數(shù)據(jù)庫(kù)名.dbo.表名) --把本地表導(dǎo)入遠(yuǎn)程表 insert openrowset( 'SQLOLEDB ', 'sql服務(wù)器名 '; '用戶名 '; '密碼 ',數(shù)據(jù)庫(kù)名.dbo.表名) select *from 本地表 --更新本地表 update b set b.列A=a.列A from openrowset( 'SQLOLEDB ', 'sql服務(wù)器名 '; '用戶名 '; '密碼 ',數(shù)據(jù)庫(kù)名.dbo.表名)as a inner join 本地表 b on a.column1=b.column1 --openquery用法需要?jiǎng)?chuàng)建一個(gè)連接 --首先創(chuàng)建一個(gè)連接創(chuàng)建鏈接服務(wù)器 exec sp_addlinkedserver 'ITSV ', ' ', 'SQLOLEDB ', '遠(yuǎn)程服務(wù)器名或ip地址 ' --查詢 select * FROM openquery(ITSV, 'SELECT * FROM 數(shù)據(jù)庫(kù).dbo.表名 ') --把本地表導(dǎo)入遠(yuǎn)程表 insert openquery(ITSV, 'SELECT * FROM 數(shù)據(jù)庫(kù).dbo.表名 ') select * from 本地表 --更新本地表 update b set b.列B=a.列B FROM openquery(ITSV, 'SELECT * FROM 數(shù)據(jù)庫(kù).dbo.表名 ') as a inner join 本地表 b on a.列A=b.列A --3、opendatasource/openrowset SELECT * FROM opendatasource( 'SQLOLEDB ', 'Data Source=ip/ServerName;User ID=登陸名;PassWord=密碼 ' ).test.dbo.roy_ta 設(shè)置SQL Server定時(shí)執(zhí)行命令
1、打開對(duì)象資源管理器,找到SQL Server代理
2、新建作業(yè)
3、在作業(yè)屬性—>常規(guī)項(xiàng)中填上作業(yè)名稱和描述信息
在作業(yè)屬性—>步驟項(xiàng)中類型為Transact-SQL腳本(T-SQL)的命令,如EXEC sp_PRocedure(如果有多個(gè)步驟,注意保證上一個(gè)步驟成功后轉(zhuǎn)到下一步)
在作業(yè)屬性—>計(jì)劃項(xiàng)為命令執(zhí)行設(shè)置定時(shí)等
4、確定。
5、啟動(dòng)SQL Server Agent
新聞熱點(diǎn)
疑難解答
圖片精選