임 저장 기능 SQL 오류와 같은 저장 함수를 호출 다음 요구하는 포스트 그레스
PreparedStatement deleteAll=connection.prepareStatement("{ call delete_all_data() }");
deleteAll.execute();
그리고 내가 볼 로그에
:15:16:31,950 WARN SqlExceptionHelper:143 - SQL Error: 0, SQLState: 42601
15:16:31,950 ERROR SqlExceptionHelper:144 - ERROR: syntax error at or near "{"
Position: 1
가의 prepareStatement 문제점은 무엇입니까 ??
저장 프로 시저에 'CallableStatement'를 사용해야합니다. –
'connection.prepareStatement ("select delete_all_data()")'이면 충분합니다. 'CallableStatement'가 필요 없습니다. –
@LuiggiMendoza JDBC 드라이버는'Statement'와'PreparedStatement'를 사용하여 호출 이스케이프를 지원해야합니다. 저장 프로 시저에 'OUT' 매개 변수 ('PreparedStatement') 또는 매개 변수 자리 표시 자 ('Statement'의 경우)가없는 한이 작업이 작동합니다. 그러나 실제로는 대부분의 드라이버가'CallableStatement'만으로이를 지원합니다. –