MS SQLSERVER如何實現跨伺服器查詢
--跨伺服器查詢如下:
SELECT a.*
FROM OPENROWSET('MSDASQL',
'DRIVER={SQL Server};SERVER=10.27.27.160;UID=sa;PWD=ncunicom_alarm',
BSC_ALARM.dbo.ALARM_LIST) AS a
--其中,10.27.27.160為遠端伺服器IP,也可以使用別名,BSC_ALARM是遠端資料庫,ALARM_LIST遠端資料庫中的表
如:
insert into
dbo.Kqmx_200704
select *
from
openrowset('MSDASQL',
'DRIVER={SQL
Server};SERVER=192.168.1.253;UID=sa;PWD=',
one.dbo.Kqmx_200704)
另:
連線遠端伺服器進行資料查詢時可以這麼做:select * from
[**.**.**.**].test.dbo.t1
不過,不出意外的話會報錯:在 sysservers 中未能找到伺服器 '**.*.**.**'。請執行
sp_addlinkedserver 以將伺服器新增到 sysservers。
新增sysservers:exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','**.*.**.**'
再查詢:select * from srv_lnk.test.dbo.t1
(因為定義了“別名”,所以這兒“別名”)
除非兩個伺服器上的該使用者的密碼一樣,否則會報:使用者 '**' 登入失敗。
指定登入使用者:exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'rUser','rPwd'
再查詢:select * from srv_lnk.test.dbo.t1,如果無意外的話就應該是成功的
sp_addlinkedserver
建立一個連結的伺服器,使其允許對分散式的、針對 OLE DB 資料來源的異類查詢進行訪問。在使用 sp_addlinkedserver 建立連結的伺服器之後,此伺服器就可以執行分散式查詢。如果連結伺服器定義為 Microsoft® SQL Server™,則可執行遠端儲存過程。
Exec sp_droplinkedsrvlogin
server,Null
Exec sp_dropserver server
EXEC sp_addlinkedserver
@server= 'server ',--被訪問的伺服器別名
@srvproduct= ' ',
@provider= 'SQLOLEDB ',
@datasrc= '10.23.11.28,3342 '
--要訪問的伺服器
EXEC sp_addlinkedsrvlogin
'server ', --被訪問的伺服器別名
'false ',
NULL,
'la0001 ', --帳號
'aaaaaa ' --密碼
連結伺服器沒問題,在查詢分析器裡執行例如:select * from
[192.168.0.119].fash.dbo.vwAllUser沒問題.
但如果想建立一個簡單的儲存過程:
CREATE PROCEDURE TEST AS
set nocount on
SET
ARITHABORT,CONCAT_NULL_YIELDS_NULL,QUOTED_IDENTIFIER,ANSI_NULLS,ANSI_PADDING,ANSI_WARNINGS
ON
set NUMERIC_ROUNDABORT off
select * from
[192.168.0.119].fash.dbo.vwAllUser
GO
不能儲存此儲存過程,提示:
錯誤7405:異類查詢要求為連線設定 ANSI_NULLS 和 ANSI_WARNINGS
選項。這將確保一致的查詢語義。請啟用這些選項,然後重新發出查詢。
解決辦法:
在儲存過程中加
SET ANSI_NULLS ON
SET ANSI_WARNINGS ON
SET XACT_ABORT on
相關推薦
MS SQLSERVER如何實現跨伺服器查詢
--跨伺服器查詢如下: SELECT a.* FROM OPENROWSET('MSDASQL', 'DRIVER={SQL Server};SERVER=10.27.27.160;UID=sa;PWD=ncunicom_alarm', BSC_ALARM.dbo.ALARM_LIS
mysql實現跨伺服器查詢資料
在日常的開發中經常進行跨資料庫進行查詢資料。 同伺服器下跨資料庫進行查詢在表前加上資料庫名就可以查詢到資料。 mysql跨伺服器進行查詢提供了FEDERATED引擎進行對映表,然後進行查詢。 mysql資料庫federated引擎是關閉的,首先需要先啟用該引擎。
sqlserver中跨伺服器查詢資料
[SQL SERVER] 跨伺服器查詢 方法一: 用OPENDATASOURCE 下面是個跨SQLServer查詢的示例 Select TableA.*,TableB.* From OPENDATASOURCE( 'SQLOLEDB',
SqlServer 連線字串不使用資料庫名 實現跨庫查詢
此次運用需要在同一伺服器下,在一個庫中SQL查詢一組資料,作為引數提交到一個另一個庫的函式中進行計算,以前沒玩過,問了下度娘,未得到可用結果,遂根據查到的零星資訊猜想,取消連線字串裡面的庫名稱試試能不能同時操作多個庫,經測試,順利一次通過執行成功!詳見以下程式碼(以ASP為
利用JDBC連線實現跨伺服器跨資料庫跨表資料傳輸
如題 我現在有兩個伺服器 A和B 我現在要把A伺服器上的某一個庫裡面的所有的表及結構及資料 匯入另外一個伺服器上,實現原理利用原始JDBC 完成 程式碼類: 回家再擼 目前在公司 。。 下班 哈哈 晚上吃了點飯 就回來
跨伺服器查詢資料
use master; go drop database mydata; go create database mydata; go use mydata; go create table t_user ( userguid uniqueidentifier not null defa
JAVA+FTP實現跨伺服器獲取檔案,支援區域網和外網
1.FTP服務是filezilla server。 下載地址: https://filezilla-project.org/ 2.filezilla server安裝及配置教程 教程地址: https:
C#連結SQLServer實現插入和查詢資料來源程式碼
String sql = "insert into Fileuploaded (FileID,FileName,FilePath,QRCodePath,FileSuffix) Values('"+fileNameSave+"','"+fileName+"','"+filePath+"','"+filePat
SQL SERVER跨伺服器查詢
1.執行儲存過程 sp_addlinkedserver 以將伺服器新增到 sys.servers。 exec sp_addlinkedserver 'IPTV', ' ', 'SQLOLEDB ', '遠端伺服器名或ip地址 ' exec sp_addlink
Oracle使用DBLINK實現跨庫查詢
Platform: OS:Windows Server 2012 R2 64bit Oracle:11.2 64bit 引子: 在對醫院的審計中,因為該醫院使用了兩個HIS系統,涉及到兩個O
SQLServer中跨伺服器跨資料庫之間的資料操作
首先必須理解一個概念: select * from sys.servers (檢視系統表,看原來的伺服器名) 要想跨域就必須在以上資訊中可以檢索到! 怎樣新增? --建立連結伺服器 exec sp_addlinkedserver 'ITS
Jenkins-Docker-SpringBoot-java-git-gradle-持續整合與自動部署-實現跨伺服器部署
1.首先你需要在git倉庫中有一份可作為服務啟動的springboot程式碼。 可選擇方案(github-國外,Gitee國內,自己搭建私有倉庫): 1.1 如果你只是為了測試或者你的專案是開源的,可以選擇github(國外),因為github私有專案需要收費,你懂的。gi
mysql跨伺服器查詢
1 引擎說明 本地MySQL資料庫要訪問遠端MySQL資料庫的表中的資料, 必須通過FEDERATED儲存引擎來實現. 有點類似Oracle中的 資料庫連結(DBLINK). 要允許這個儲存引擎, 當構建MySQL時使用--with-federated-storage-engine來configure
springMVC+jersey實現跨伺服器檔案上傳
1.首先新增所需要的jar包 2.在springMVC的配置檔案中新增檔案上傳解析器 <!-- 檔案上傳的解析器 --> <bean id="multipartR
快取一致性和跨伺服器查詢的資料異構解決方案canal
當你的專案資料量上去了之後,通常會遇到兩種情況,第一種情況應是最大可能的使用cache來對抗上層的高併發,第二種情況同樣也是需要使用分庫 分表對抗上層的高併發。。。逼逼逼起來容易,做起來並不那麼樂觀,由此引入的問題,不見得你有好的解決方案,下面就具體分享下。 一:儘可
sql serve 跨伺服器查詢資料方法
今天在做sql server 的資料查詢時,需要用到跨伺服器連線,在這裡記錄一下,如何在sql server 中,使用跨伺服器查詢的方法,有以下步驟。 /*建立中間資料庫連結 exec sp_addlinkedserver 'MiddleData', ' ', 'SQ
SQL Server 實現跨服務器查詢的方式
lol linked server nbsp drop false err dlink pre 幹貨如下: exec sp_addlinkedserver ‘ITSV‘, ‘‘, ‘SQLOLEDB‘, ‘crs.***.com,6598‘ exec sp_addl
查詢選修了全部課程的學生姓名_如何解?-MS-SQLServer/應用實例
sqlserver sna sts bsp 課程 這一 學生 .cn 全部 查詢選修了全部課程的學生姓名:student 是學生表 course 是選課表 sc 是課程表select snamefrom studentwhere not exists(select *fro
在SqlServer中通過SQL語句實現樹狀查詢
clas all bold join where procedure ner log class 1 CREATE PROCEDURE [dbo].[GetTree] 2 @Id int 3 AS 4 BEGIN 5 with cte as
在項目中遷移MS SQLServer到Mysql數據庫,實現MySQL數據庫的快速整合
mage 操作 info 支持 文件選擇 需要 並且 在服務器 重要 在開發項目的時候,往往碰到的不同的需求情況,兼容不同類型的數據庫是我們項目以不變應萬變的舉措之一,在底層能夠兼容多種數據庫會使得我們開發不同類型的項目得心應手,如果配合快速的框架支持,那更是錦上添花的舉措