반응형
JDBC(mariaDB)를 통해 선택한 행의 기본 키 값을 검색하는 방법
JDBC에서 선택한 레코드의 기본 키 값을 가져오는 데 문제가 있습니다.테이블 이름을 키로 하고 기본 키 이름을 값으로 하는 HashMap을 가지고 있으며 사용자가 선택한 테이블 이름을 찾고 기본 키 이름을 얻기 위해 반복하고 있습니다.이때까지는 모든 것이 정상적으로 작동하지만 기본 키 값을 가져오려고 하면 항상 0이 반환됩니다.
제가 사용하고 있는 서버는 MariaDB 2.4.1에서 실행되고 있으며 Java 1.8을 사용하고 있습니다.아래는 사용자 입력의 일치와 기본 키 이름의 할당을 담당하는 for 루프입니다.try catch 문 안에서 기본 키 값을 가져오려고 하지만 항상 0을 반환합니다.기본 키는 데이터베이스에서 자동 증분으로 설정되며 값은 데이터베이스에서 정상적으로 업데이트됩니다.
for (Map.Entry hashMap : getTablesWithPrimaryKeys().entrySet()) {
if (getTableName().compareTo(hashMap.getKey().toString()) == 0) {
setPrimaryKey((String)hashMap.getValue());
System.out.println(getPrimaryKey());
try {
PreparedStatement statement = connection.prepareStatement("SELECT * FROM " + tableName, Statement.RETURN_GENERATED_KEYS);
statement.executeQuery();
ResultSet resultSet = statement.getGeneratedKeys();
if (resultSet.next()) {
setPrimaryKeyValue(resultSet.getLong(1));
System.out.println(getPrimaryKeyValue());
}
connection.close();
} catch (SQLException exception) {
exception.printStackTrace();
}
}
}
예외가 발생하지 않기 때문에 여기서 확실히 누락된 부분이 있습니다.도와드릴까요?
언급URL : https://stackoverflow.com/questions/57233456/how-to-retrieve-primary-key-value-of-selected-row-through-jdbc-mariadb
반응형
'programing' 카테고리의 다른 글
오류: 함수에 대한 이전 프로토타입이 없습니다.이 오류가 발생하는 이유는 무엇입니까? (0) | 2023.08.26 |
---|---|
숫자가 10진수인지 확인합니다. (0) | 2023.08.26 |
자바스크립트(jquery)가 있는 정수 값을 문자열을 반환하는 값에 추가하려면 어떻게 해야 합니까? (0) | 2023.08.26 |
파워셸의 열에서 개별 항목 선택 (0) | 2023.08.26 |
미끄러운 회전목마 - 슬라이드의 높이를 같게 합니다. (0) | 2023.08.26 |