360浏览器开小号:这么写存储过程怎么错了?

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/08 17:00:20
这是一个Sql Server中的存储过程
CREATE PROCEDURE spIJCP001T_统计お客様_供给别件数UPD01
(

@data datetime,
@fromId decimal(2,0),
@toId decimal(2,0)
)
AS

DELETE FROM 表1
WHERE 时间 = @data

IF @toId = NULL
AND JigyosyoCd > @fromId
ELSE
AND JigyosyoCd > @fromId
AND JigyosyoCd < @toJigyosyoCd

IF @@ERROR<>0
RETURN(1)
ELSE
RETURN(0)

GO

他说 在第一个esle那里的语法错了。
错在那里呢? 谢谢
sorry 字段错了 SQL这样
DELETE FROM 表1
WHERE 时间 = @data

IF @toId = NULL
AND id > @fromId --Id 是字段
ELSE
AND id > @fromId
AND id < @toId

IF @@ERROR<>0
RETURN(1)
ELSE
RETURN(0)

@fromId
@toId
@data
这三个是参数

Declare @Sql as Nvarchar(1000)
Set @Sql = "DELETE FROM 表1 WHERE 时间 =“+ Str(@data)

IF @toId = NULL
Set @Sql = @Sql+" AND JigyosyoCd >" + Str(@fromId)
ELSE
Begin
Set @Sql = @Sql+" AND JigyosyoCd > "+Str(@fromId)
Set @Sql = @Sql+" AND JigyosyoCd < "+Str(@toJigyosyoCd)
---@toJigyosyoCd 是从参数传过来的?如果不是,去除上一句
End

Exec @Sql
IF @@ERROR<>0
RETURN(1)
ELSE
RETURN(0)

好象错误不少JigyosyoCd是个什么东东? 没有定义啊