0
我访问一个存储过程具有一个参数的SQL服务器上,我可以很容易地在SQL客户端上运行如下:调用MSSQL存储过程中的Java
exec sp_name "2016/11/01"
现在我想做的事在java中同样的事情。
PreparedStatement ps = conn.prepareStatement("sp_name ?");
ps.setString(1, "2016/11/01");
ResultSet rs = ps.executeQuery();
在rs
我可以看到列的名称,但返回零行。我想这是因为存储过程的参数。我在这里错过了什么吗?
什么是一个参数的类型?无论如何,我会建议你使用[CallableStatement](https://docs.oracle.com/javase/7/docs/api/java/sql/CallableStatement.html)。此外,问题可能出现在SP本身...... PS:更好地使用ISO格式化日期格式,在SQL Server调用中使用格式“YYYYMMDD”或“YYYY-MM-DD”。 –
嗯,我不知道这个类型,因为我没有访问SP的来源。 –
也许尝试使用'(java.sql。)date'参数? –