首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何组合存储过程和选择查询结果?

问如何组合存储过程和选择查询结果?
EN

Stack Overflow用户
提问于 2012-07-16 19:12:30
回答 2查看 2.7K关注 0票数 3

我正在尝试将xp_cmdshell的结果与select查询结合起来。我尝试过联合&阅读有关创建临时表的内容,但我的结果将只有1列。更准确地说,我需要一个更小的查询来将xp_cmdshell的结果与select查询组合在一起,因为我试图在基于联合的sql注入中使用它

例如:

代码语言:javascript
复制
Select name from employee
union
exec xp_cmdshell 'whoami'

我知道这是行不通的,但稍微有点相似就更好了:)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-16 19:24:26

创建一个临时表并插入到#temp EXEC中。或者使用OPENROESET。请参阅此http://beyondrelational.com/modules/2/blogs/70/posts/10812/select-columns-from-exec-procedurename-is-this-possible.aspx

票数 -1
EN

Stack Overflow用户

发布于 2012-07-16 19:22:05

您应该知道此存储过程返回什么以及输出什么。然后,当您知道此过程返回的表模式时,可以使用以下语法:

代码语言:javascript
复制
DECLARE @procedureOutput nvarchar(max)
SET @procedureOutput=Exec xp_cmdshell 'dir'
SELECT name FROM employee union @procedureOutput

如果需要转换两种不同的数据类型,可以使用CAST和CONVERT命令。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11503067

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档