다음과 같이 테이블과 프로시저를 생성했습니다. create table customer( c_no VARCHAR2(14) NOT NULL, c_name VARCHAR2(20) NOT NULL, c_addr VARCHAR2(60), c_phone VARCHAR2(16), c_dist CHAR(2) ); create or replace procedure input_customer( c_no in varchar2, c_name in varchar2, c_addr in varchar2, c_phone in varchar2, c_dist in char ) as begin insert into customer(c_no, c_name, c_addr, c_phone, c_dist) values(c_no, c_name, c_addr, c_phone, c_dist); end; 위의 테이블과 프로시저를 바탕으로 자바 코드를 아래와 같이 작성했습니다. import java.sql.*; public class CallableStatement { public static void main(String[] argv) { Connection conn; try { Class.forName("oracle.jdbc.driver.OracleDriver"); conn = DriverManager.getConnection( "jdbc:oracle:thin:@117.17.198.43:1531:ORCL", "CSDB202", "CSDB202"); java.sql.CallableStatement cstmt; cstmt = conn.prepareCall("{call input_customer(?, ?, ?, ?, ?)}"); cstmt.setString(1, "871024-1213528"); cstmt.setString(2, "김윤성"); cstmt.setString(3, "서울시 송파구"); cstmt.setString(4, "02-712-4567"); cstmt.setString(5, "0"); cstmt.executeUpdate(); String c_no = cstmt.getString(1); // 오류가 나는 곳 String c_name = cstmt.getString(2); String c_addr = cstmt.getString(3); String c_phone = cstmt.getString(4); String c_dist = cstmt.getString(5); System.out.println("NO : " + c_no); System.out.println("NAME : " + c_name); System.out.println("ADDR : " + c_addr); System.out.println("PHONE : " + c_phone); System.out.println("DIST : " + c_dist); cstmt.close(); conn.close(); } catch(Exception e) { e.printStackTrace(); } } } 위의 자바 코드를 인텔리제이(IDE)에서 실행하면 java.sql.SQLException: 부적합한 열 인덱스 라는 오류가 나오는데, getString() 안의 인자값을 파라미터 인덱스가 아닌 파라미터 값을 다음과 같이 넣어줘도 동일한 오류가 발생하네요. String c_no = cstmt.getString("c_no"); String c_name = cstmt.getString("c_name"); String c_addr = cstmt.getString("c_addr"); String c_phone = cstmt.getString("c_phone"); String c_dist = cstmt.getInt("c_dist"); 정상실행이 되게 하려면 코드를 어떻게 수정해야 하나요? 도움이 절실합니다.