2013-03-19 3 views
1

삽입 된 행의 ID (varchar)를 나타내는 스칼라 값을 반환하는 sproc을 호출하려고합니다. 어떻게 JDBC에서이를 수행 할 수 있습니까? 내가의 ResultSet에게JDBC를 사용하여 스칼라 값을 검색하는 방법은 무엇입니까?

ResultSet resultSet = statement.executeQuery(); 
resultSet.next(); 
String productId = resultSet.getString(1); 

를 사용하는 DB의 sproc에 반환이

select SCOPE_IDENTITY() 

처럼 내 코드 발생하자 내가 지금하고 있어요입니다 내가 제대로하고있는 건가요?

+0

우편 번호로 JDBC로 생성 된 ID를 검색하는 데보다 더 낫다입니다. 또한 테이블의 스키마를 보여줍니다. – expert

답변

4

그것은 당신이 지금까지 시도

PreparedStatement ps = conn.prepareStatement(insertStatement, Statement.RETURN_GENERATED_KEYS); 
    ps.executeUpdate(); 
    ResultSet rs = ps.getGeneratedKeys(); 
    rs.next(); 
    String id = rs.getString(1); 
+0

차가움. 하지만 문제는 내가 sproc을 호출한다는 것입니다. 우리 회사는 JDBC를 통해 SQL을 직접 작성하는 것을 허용하지 않습니다. – imgen

관련 문제