麻烦各位看看,提示有错Alter PROCEDURE CDate
(
@U_LoginName varchar(200),
@ProductsName varchar(200),
@ProductsBusiness varchar(200),
@Ptype varchar(200),
@Price float,
@counts int,
@StartTime datetime,
@EndTime datetime,
@PIP varchar(200),
@PayMode varchar(200),
@GID int,
@SID INT,
@UserName varchar(200),
@Images varchar(200),
@PID INT,
@scounts int,
@StockID int,
@IsTrade int,
@LastTime datetime
)
AS
declare @return int
declare @rcount int
set @return=-1
set @rcount=0BEGIN Transaction STinsert into MoneyRelease(GID,SID,U_LoginName,ProductsName,ProductsBusiness,UserName,PType,Price,counts,StartTime,EndTime,PIP,Images,payMode) values(@GID,@SID,@U_LoginName,@ProductsName,@ProductsBusiness,@UserName,@PType,@Price,@counts,@StartTime,@EndTime,@PIP,@Images,@payMode)
select @rcount=count(*) from Stock where gid=@gid and sid=@sid and U_LoginName=@U_LoginName
if @rcount <> 0 update Stock set counts=@scounts where StockID=@StockIDelseinsert stock values(@GID,@SID,@U_LoginName,@ProductsName,@ProductsBusiness,@UserName,@PType,@Price,@counts,@LastTime,@payMode,@IsTradeIF @@Error <> 0
Begin
RollBack Transaction ST
End
Else
COMMIT Transaction ST
(
@U_LoginName varchar(200),
@ProductsName varchar(200),
@ProductsBusiness varchar(200),
@Ptype varchar(200),
@Price float,
@counts int,
@StartTime datetime,
@EndTime datetime,
@PIP varchar(200),
@PayMode varchar(200),
@GID int,
@SID INT,
@UserName varchar(200),
@Images varchar(200),
@PID INT,
@scounts int,
@StockID int,
@IsTrade int,
@LastTime datetime
)
AS
declare @return int
declare @rcount int
set @return=-1
set @rcount=0BEGIN Transaction STinsert into MoneyRelease(GID,SID,U_LoginName,ProductsName,ProductsBusiness,UserName,PType,Price,counts,StartTime,EndTime,PIP,Images,payMode) values(@GID,@SID,@U_LoginName,@ProductsName,@ProductsBusiness,@UserName,@PType,@Price,@counts,@StartTime,@EndTime,@PIP,@Images,@payMode)
select @rcount=count(*) from Stock where gid=@gid and sid=@sid and U_LoginName=@U_LoginName
if @rcount <> 0 update Stock set counts=@scounts where StockID=@StockIDelseinsert stock values(@GID,@SID,@U_LoginName,@ProductsName,@ProductsBusiness,@UserName,@PType,@Price,@counts,@LastTime,@payMode,@IsTradeIF @@Error <> 0
Begin
RollBack Transaction ST
End
Else
COMMIT Transaction ST
在关键字 'IF' 附近有语法错误。
select @rcount=count(*) from Stock where gid=@gid and sid=@sid and U_LoginName=@U_LoginName
if @rcount <> 0 update Stock set counts=@scounts where StockID=@StockIDelseinsert stock values(@GID,@SID,@U_LoginName,@ProductsName,@ProductsBusiness,@UserName,@PType,@Price,@counts,@LastTime,@payMode,@IsTrade
则回滚事务,麻烦给看一下
(
@U_LoginName varchar(200),
@ProductsName varchar(200),
@ProductsBusiness varchar(200),
@Ptype varchar(200),
@Price float,
@counts int,
@StartTime datetime,
@EndTime datetime,
@PIP varchar(200),
@PayMode varchar(200),
@GID int,
@SID INT,
@UserName varchar(200),
@Images varchar(200),
@PID INT,
@scounts int,
@StockID int,
@IsTrade int,
@LastTime datetime
) AS
declare @return int
declare @rcount int
set @return=-1
set @rcount=0 BEGIN Transaction ST insert into MoneyRelease(GID,SID,U_LoginName,ProductsName,ProductsBusiness,UserName,PType,Price,counts,StartTime,EndTime,PIP,Images,payMode) values(@GID,@SID,@U_LoginName,@ProductsName,@ProductsBusiness,@UserName,@PType,@Price,@counts,@StartTime,@EndTime,@PIP,@Images,@payMode)
select @rcount=count(*) from Stock where gid=@gid and sid=@sid and U_LoginName=@U_LoginName
if @rcount <> 0
begin
update Stock set counts=@scounts where StockID=@StockID
end
else
begin
insert stock values(@GID,@SID,@U_LoginName,@ProductsName,@ProductsBusiness,@UserName,@PType,@Price,@counts,@LastTime,@payMode,@IsTrade)
end
IF @@Error <> 0
Begin
RollBack Transaction ST
End
Else
begin
COMMIT Transaction ST
end