어떤 이유로 든 방금 삽입 한 필드에서 데이터를 가져 오려고합니다. 그리고 명확해야 : 아니, 난 "ID를 삽입"을 얻을 수있는 방법을 찾고 아니에요.SQL Server : JAVA에서 Insert로 "OUTPUT"을 얻는 방법?
예를 들어, 나는 테이블은 "회원"라는 한, 나는 다음과 같이 삽입을 수행
INSERT INTO Members (ID, NAME, PHONE, BIRTH, CREATE_DATE) OUTPUT Members.CREATE_DATE VALUES (NEXT VALUE FOR SeqID, ?, ?, ?, getdate());
이 SQL 잘 작동하고 나에게 내가 SQL에서 원하는 CREATE_DATE
을 제공 조치.
내 질문은 : 어떻게 얻으려면 CREATE_DATE
JAVA의 prepared-statement를 사용하고 있습니까?
con = ds.getConnection();
pstmt = con.prepareCall(INSERT);
pstmt.setString(1, name);
pstmt.setString(2, phone);
pstmt.setString(3, birth);
ResultSet rs = pstmt.executeQuery();
if(rs.next()) System.out.println(rs.getString("CREATE_DATE"));
그리고 registeroutparameter
"문은 결과 집합을 반환하지 않았습니다"나에게 말했다 것을하지 얻기 위해 시도한 " ? ". OUTPUT에서 데이터를 가져올 수있는 방법이 있습니까?
삽입 작업은 데이터를 db에 추가하고 상태를 반환합니다. CREATE_DATE를 원하면 CREATE_DATE를 얻기 위해 필수 매개 변수를 전달하여 다른 SELECT 쿼리를 작성해야합니다. – kosa