8

1 つの out パラメータを返す SQL Server 2008 プロシージャがあり、Java から呼び出しています。私のコードは以下のとおりです

ストアド プロシージャのコードは

Create PROCEDURE countInfected @infected int out
AS
Select @infected = COUNT(*) from userInfo
where userID NOT IN (Select userID from deletedInfo);

Java呼び出しコードは

CallableStatement infected = null;
infected = con.prepareCall("call countInfected(?)");
infected.registerOutParameter(1, java.sql.Types.INTEGER);
infected.execute();
System.out.println("Infected"+ infected.getInt(1));

しかし、感染した.execute(); 次のエラーが発生しています

com.microsoft.sqlserver.jdbc.SQLServerException: '@P0' 付近の構文が正しくありません

どこに問題があるのか​​教えてください

4

1 に答える 1