2016-11-07 3 views
1

Java에서 2 입력 매개 변수로 아래 절차를 실행해야합니다. 그것은 성공적으로 실행되어야하며, 출력 매개 변수는 필요하지 않습니다.호출 가능 문 내 Java-To_Date()

누구든지 코드를 도와주세요.

SQL 문 :

call pack_context.context_open(to_date('31-JULY-2016'),7); 

자바 코드는 아래 그림과 같이

CallableStatement callableStatement = null; 
String proc = "{call pack_context.context_open(?,?)}"; 
callableStatement = con.prepareCall(proc);   
callableStatement.setInt(2, 7); 
callableStatement.setDate(parameterName, x);//Need Help 
+0

여기에 문자열이 필요하지만 날짜를 수락하도록 쿼리를 변경할 수도 있습니다. 편집 : Oups, PC에 to_date 귀하의 제거를 보지 못했습니다 – AxelH

+0

당신의 도움을 많이 주셔서 감사합니다. 그것은 효과가 있었다. – Ketaki

답변

1
callableStatement.setDate(parameterName, x);//Need Help 

조정할 수 있습니다 :

String myDate="31-JUL-2016"; // notice JUL, instead of JULY 
// or use some other date string like yyyy-MM-dd 
SimpleDateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy"); 
java.util.Date date = sdf.parse(myDate); 
java.sql.Date d = new java.sql.Date(date.getTime()); 
callableStatement.setDate(parameterName, d); 
// here parameterName should be the exact name as 
// in your procedure `pack_context.context_open`. 

setDate(String parameterName, Date x)이 될 두 번째 매개 변수가 필요합니다 java.s를 입력하십시오. ql.Date. 데이타베이스에 보낼 때에, 드라이버는 이것을 SQL DATE 값으로 변환합니다.