【问题标题】:How to set mutliple variables using SELECT and CASE如何使用 SELECT 和 CASE 设置多个变量
【发布时间】:2012-05-17 20:41:05
【问题描述】:

当传递的参数是这样的某个值时,我试图在我的存储过程中设置变量:

ALTER PROCEDURE [dbo].[Procedure1]
(
    @ID int,
    @WatchType varchar(100)
)
AS
    SET NOCOUNT ON
    DECLARE @stock int
    DECLARE @price float
    DECLARE @details varchar(max)

CASE @WatchType
WHEN 'TIMEX' THEN
    (SELECT @stock= Stock, 
    @price= Price, 
    @details= Details, 
    FROM tblWatches WHERE Uid= @ID)
ELSE
END

当我尝试解析它时,我不断收到错误。有谁知道为什么?

【问题讨论】:

    标签: sql database sql-server-2005 stored-procedures


    【解决方案1】:
    ALTER PROCEDURE [dbo].[Procedure1]
    (
        @ID int,
        @WatchType varchar(100)
    )
    AS
        SET NOCOUNT ON
        DECLARE @stock int
        DECLARE @price float
        DECLARE @details varchar(max)
    
    IF @WatchType = 'TIMEX'
    BEGIN
        (SELECT @stock= Stock, 
        @price= Price, 
        @details= Details, 
        FROM tblWatches WHERE Uid = @ID)
    END
    

    【讨论】:

    • 它说我在 THEN 和 SELECT 附近有一个非法语法
    猜你喜欢
    • 2011-02-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-30
    • 2017-03-13
    相关资源
    最近更新 更多