帮助我从链式存储过程中进行选择
我将本地服务器 pblack 添加为 SQL Server 2008 R2 中的链接服务器
---1)
EXEC master.dbo.sp_addlinkedserver @server = N'pblack',
--'pblack' is my localhost
@srvproduct=N'SQL Server'
并成功执行 2) 和 3):
--2)
sp_MSforeachtable @command1="EXEC sp_spaceused '?'"
--3)
SELECT * INTO #temp
FROM OPENQUERY(pblack,'exec sp_who')
SELECT * FROM #temp
4)
如何将 2) 插入 3) 而不是“exec sp_who”。我无法正确引用表达式...
为什么我无法在 SQL Server 2008R2 中链接本地或本地主机?
更新:
目的是进一步修改 SELECT,例如,输出 max(data) - 查找具有最大大小的表
Update2:
SELECT * INTO #temp
FROM OPENQUERY
(
pblack,
'EXEC sp_MSforeachtable @command1= '' EXEC sp_spaceused ''''?'''' '' '
)
给出错误:
Msg 208, Level 16, State 1, Procedure sp_MSforeach_worker, Line 102
Invalid object name '#qtemp'.
我尝试连接字符串 + 使用临时 varchar 变量收到相同的错误。
我怀疑问题更深层次,因为“选择”似乎不是来自一个行集而是多个行集?
好吧,我可以沉迷于研究代码,但我希望找到一些(神奇的)解决方法。
I added my local server pblack as linked server in SQL Server 2008 R2
---1)
EXEC master.dbo.sp_addlinkedserver @server = N'pblack',
--'pblack' is my localhost
@srvproduct=N'SQL Server'
and executed successfully 2) and 3):
--2)
sp_MSforeachtable @command1="EXEC sp_spaceused '?'"
--3)
SELECT * INTO #temp
FROM OPENQUERY(pblack,'exec sp_who')
SELECT * FROM #temp
4)
How can I insert 2) into 3) instead of 'exec sp_who'. I cannot manage to correctly quote expressions...
Why cannot I link local or localhost in SQL Server 2008R2?
Update:
The purpose is to further modify SELECT, for example, outputting max(data) - finding the table with maximum size
Update2:
SELECT * INTO #temp
FROM OPENQUERY
(
pblack,
'EXEC sp_MSforeachtable @command1= '' EXEC sp_spaceused ''''?'''' '' '
)
gives error:
Msg 208, Level 16, State 1, Procedure sp_MSforeach_worker, Line 102
Invalid object name '#qtemp'.
I tried concating the strings + using temp varchar variables recieving the same error.
I suspect that the problem is deeper since "select" seems like not not from one rowset but multiple ones?
Well, I can drown in studying the code but I expect to find some (magic) work-around.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
只需将每个嵌套级别的引号加倍即可,并且始终使用单引号。
认为是这样的:
Just double up the quotes for each nest level, and always use single quotes too.
Think this is it: