2009-10-21 6 views
0

J'ai la situation suivante ...Comment utiliser correctement la procédure setString?

J'utilise CallableStatement du paquet java.sql. Lorsque j'utilise la fonction setDate avant d'exécuter la procédure stockée, je reçois une erreur:

Cannot find symbol symbol: method setDate(int, java.util.Date) location: interface java.sql.CallableStatement"

est ici l'exemple de code:

Connection con = null; 
CallableStatement proc_stmt = null; 

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 

con = DriverManager.getConnection("jdbc:sqlserver://servername;databaseName=DBName", "UNAME", "PASS"); 

proc_stmt = con.prepareCall("{ call InsertSomething(?, ?) }"); 

proc_stmt.setString(1, "A00999999"); 
proc_stmt.setDate(2, new Date()); 

proc_stmt.executeQuery(); 

proc_stmt.close(); 
con.close(); 

J'ai même essayé cette aide de classe Calendar avec des fonctions appropriées, mais l'effet était le même.

Répondre

3

Il doit être un java.sql.Date, une sous-classe de java.util.Date

+0

Vous m'avez battu de 5 secondes :-) – NickDK

+0

Merci beaucoup, c'est ça : D;) – Eedoh

+0

De rien, Eedoh. NickDK: meilleure chance la prochaine fois;) – sinuhepop

2

Vous devez utiliser la classe java.sql.Date au lieu de la classe java.util.Date.

Questions connexes