Java 存储过程出错
Java Stored proc giving an error
我正在尝试通过以下方式创建存储过程:
DROP procedure IF EXISTS plus1inout
/;
CREATE procedure plus1inout (IN arg int, OUT res int)
BEGIN ATOMIC
set res = arg + 1;
END
/;
我收到以下错误:
Msg 156, Level 15, State 1.
Incorrect syntax near the keyword 'IF'.
Msg 156, Level 15, State 1.
Incorrect syntax near the keyword 'IN'. (Line 3)
几件事。那个“/”来自甲骨文。如果你愿意,你可以使用GO这个词。要检查是否存在:您使用此代码:
IF OBJECT_ID('plus1inout', 'P') IS NOT NULL
DROP PROC plus1inout
GO
然后创建过程。
创建时参数声明错误
CREATE procedure plus1inout (@arg int, @res int out)
BEGIN ATOMIC
set @res = @arg + 1;
END;
您的语法在 sql 服务器中无效。
要检查是否存在,请使用 object_id
函数
IF OBJECT_ID('plus1inout', 'P') IS NOT NULL
DROP PROCEDURE plus1inout
对于输入参数,您不必提及 IN
关键字。对于 OUTPUT
参数,在末尾使用关键字 OUT
。另外参数以 @
in Sql Server
开头
CREATE PROCEDURE Plus1inout (@arg INT,
@res INT output)
AS
BEGIN
SET @res = @arg + 1;
END
在 SQL SERVER 2016
中,他们介绍了您用于检查过程是否存在的语法
DROP procedure IF EXISTS plus1inout
我正在尝试通过以下方式创建存储过程:
DROP procedure IF EXISTS plus1inout
/;
CREATE procedure plus1inout (IN arg int, OUT res int)
BEGIN ATOMIC
set res = arg + 1;
END
/;
我收到以下错误:
Msg 156, Level 15, State 1.
Incorrect syntax near the keyword 'IF'.
Msg 156, Level 15, State 1.
Incorrect syntax near the keyword 'IN'. (Line 3)
几件事。那个“/”来自甲骨文。如果你愿意,你可以使用GO这个词。要检查是否存在:您使用此代码:
IF OBJECT_ID('plus1inout', 'P') IS NOT NULL
DROP PROC plus1inout
GO
然后创建过程。 创建时参数声明错误
CREATE procedure plus1inout (@arg int, @res int out)
BEGIN ATOMIC
set @res = @arg + 1;
END;
您的语法在 sql 服务器中无效。
要检查是否存在,请使用 object_id
函数
IF OBJECT_ID('plus1inout', 'P') IS NOT NULL
DROP PROCEDURE plus1inout
对于输入参数,您不必提及 IN
关键字。对于 OUTPUT
参数,在末尾使用关键字 OUT
。另外参数以 @
in Sql Server
CREATE PROCEDURE Plus1inout (@arg INT,
@res INT output)
AS
BEGIN
SET @res = @arg + 1;
END
在 SQL SERVER 2016
中,他们介绍了您用于检查过程是否存在的语法
DROP procedure IF EXISTS plus1inout