我知道你可以這樣做:
如何確定鏈接服務器上是否存在數據庫?
select count(*) as Qty from sys.databases where name like '%mydatabase%'
,但你怎麼可以這樣做:
select count(*) as Qty from linkedServer.sys.databases where name like '%mydatabases%'
我想我可以把存儲過程中的鏈接服務器上並執行第一個選擇,但是有沒有辦法查詢鏈接的服務器的數據庫?
我知道你可以這樣做:
如何確定鏈接服務器上是否存在數據庫?
select count(*) as Qty from sys.databases where name like '%mydatabase%'
,但你怎麼可以這樣做:
select count(*) as Qty from linkedServer.sys.databases where name like '%mydatabases%'
我想我可以把存儲過程中的鏈接服務器上並執行第一個選擇,但是有沒有辦法查詢鏈接的服務器的數據庫?
假設你的鏈接服務器登錄已讀了master.sys.databases表的權限,你可以使用以下命令:
select * from linkedserver.master.sys.databases
在過去,我用這個SQL Server上非常查詢2008 R2。
下面列出的是一個可行的光標鏈接: http://jasonbrimhall.info/2012/03/05/are-my-linked-servers-being-used/
查詢將需要一些返工包括所有的功能,雖然觸發。
我認爲它只是你的語法是阻止你的事,請嘗試使用單引號,而不是在你的數據庫名稱%%的:
SELECT COUNT(*) as Qty FROM LinkedServer.master.sys.databases where name like 'mydatabase'
選擇鏈接服務器的正確格式已回答這裏:
你能解決你的問題嗎? – 2011-05-16 18:21:20