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'參數? –