sql - 针对存储过程 SQL Server 进行 SELECT

标签 sql sql-server sql-server-2008 tsql

在 SQL Server Management Studio 的查询编辑器中从storedp_Value SELECT Val,这可能吗?

更新

我尝试创建一个临时表,但它似乎不起作用,因此我在这里询问。

CREATE TABLE #Result
(
batchno_seq_no int
)
INSERT #Result EXEC storedp_UPDATEBATCH
SELECT * from #Result
DROP TABLE #Result
RETURN

存储过程UpdateBatch

delete from batchno_seq;
insert into batchno_seq default values;
select @batchno_seq= batchno_seq_no from batchno_seq
RETURN @batchno_seq

我做错了什么以及如何从查询窗口调用它?

更新#2

好的,我非常感谢您在这方面、方向或任何方面的帮助 - 这就是我想要实现的目标。

 select batchno_seq from (delete from batchno_seq;insert into batchno_seq default values;
 select *  from batchno_seq) BATCHNO 
 INTO TEMP_DW_EKSTICKER_CLASSIC

这是一个更大的 select 语句的一部分。任何帮助将非常感激。本质上,当我们迁移到 Oracle 时,该 SQL 就被破坏了。

最佳答案

嗯,不。要从存储过程中进行选择,您可以执行以下操作:

declare @t table (
    -- columns that are returned here
);

insert into @t(<column list here>)
    exec('storedp_Value');

如果您以这种方式使用存储过程的结果并且您编写了该存储过程,请认真考虑将代码更改为 View 或用户定义的函数。在许多情况下,您可以用更简单、更适合的构造替换此类代码。

关于sql - 针对存储过程 SQL Server 进行 SELECT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17697690/

相关文章:

sql - 在 Oracle 中描述查询结果的模式?

sql - TRY/CATCH block 与 SQL 检查

sql-server - 为插入/更新创建单个触发器

c# - 在服务器或客户端按数据分组更好吗?

mysql - 包含 sql 列表中的字符串

sql-server - 根据事件开始和持续时间计算一段时间内的事件项目

sql-server - Azure导入错误: The internal target platform type SqlAzureV12DatabaseSchemaProvider does not support schema file version '3.1'

sql-server - SQL - 如何获取非聚合结果中的重复项数?

sql-server - 如何将 SQL 查询导出到 Excel 文件尚不存在的 Excel?

mysql - 使用 mysql 在产品存在时插入或更新