小编Eri*_*son的帖子

这个OUTPUT语句(SQL Server 2005)的语法有什么问题?

我试图在存储过程中使用OUTPUT语句,以返回新插入的行的ID.存储过程是:

CREATE PROCEDURE PROC_RESTORE_REQUEST_TO_QUEUE
    @cs_uri_stem varchar(900),
    @cs_uri_query varchar(2500),
    @date datetime,
    @time datetime,
    @queue_state smallint,
    @process_id int,
    @simulation_start_time bigint,
    @num_failures smallint

AS

SET NOCOUNT ON

INSERT INTO [DD#WORK].[dbo].[ebhFifoQueue] ([cs-uri-stem],[cs-uri-query],[date],[time],[queue_state],[process_id],[simulation_start_time],[num_failures]) 
VALUES (@cs_uri_stem,@cs_uri_query,@date,@time,@queue_state,@process_id,@simulation_start_time,@num_failures) 

OUTPUT INSERTED.id
Run Code Online (Sandbox Code Playgroud)

当我尝试编译此存储过程时,收到一条错误消息:

'OUTPUT'附近的语法不正确.


我已经尝试了这些代码的几种排列无效(相同的错误消息),包括将OUTPUT语句移动到与INSERT语句相同的行.你知道我的语法有什么问题吗?在此先感谢您的帮助,

-Eric

sql t-sql stored-procedures sql-server-2005

12
推荐指数
1
解决办法
7779
查看次数

标签 统计

sql ×1

sql-server-2005 ×1

stored-procedures ×1

t-sql ×1