使用JDBC SQL驱动程序,我收到以下错误:
com.microsoft.sqlserver.jdbc.sqlserverexception: the parameter number 1 is not valid.
相关代码如下:
CallableStatement preparedCall;
String sql = "{call [dbo].[my_sproc] (?) }";
preparedCall = conn.prepareCall(sql, ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY);
DBLookup.setObject(preparedCall, 1, "Some value");
ParameterMetaData pmd = ps.getParameterMetaData();
int parameterType = pmd.getParameterType(1); //<-- here is where it's thrown
答案 0 :(得分:0)
这可能是由于连接用户凭据无法对SQL Server中的存储过程进行适当访问而导致的。
授予EXECUTE权限,这应该得到解决。