你的第一种用法实际上不是调用存储过程,而是调用oracle函数的用法;
第二种才是调用存储过程,但是有问题,改成这样试试:
aStatement=sqlCon.prepareCall(SqlString);
aStatement.registerOutParameter(2,Types.NUMBERRIC);//这里数字型是不是NUMBERRIC我记不请了,在编译器里应该会弹出帮助的
aStatement.setLong(1,billid);
aStatement.execute();另外,存储过程的参数数字型最好不要用integer,数字型用number,或者就用varchar型,oracle会自动匹配为数字型的