집 >데이터 베이스 >MySQL 튜토리얼 >PostgreSQL에서 삭제할 때 Java 코드에서 '열이 존재하지 않습니다' 오류가 발생하는 이유는 무엇입니까?
Java 프로그램을 PostgreSQL에 연결하고 CRUD 작업을 수행하는 것은 많은 경우에 필수적입니다. 응용 프로그램. 이 문서에서는 Java를 사용하여 PostgreSQL 테이블에서 데이터를 삭제하려고 할 때 발생하는 일반적인 오류를 다룹니다.
다음 코드를 실행할 때:
con = DriverManager.getConnection(url, user, password); String stm = "DELETE FROM hostdetails WHERE MAC = 'kzhdf'"; pst = con.prepareStatement(stm); pst.executeUpdate();
사용자는 오류 발생:
SEVERE: ERROR: column "mac" does not exist
PostgreSQL을 사용할 때, 대문자가 포함된 엔터티 이름(예: 테이블 및 열)은 큰따옴표("")를 사용하여 "이스케이프"해야 합니다. 따라서 올바른 코드는 다음과 같습니다.
String stm = "DELETE FROM hostdetails WHERE \"MAC\" = 'kzhdf'";
또한 더 나은 보안과 성능을 위해 준비된 문을 사용하는 것이 좋습니다. 코드는 다음과 같이 업데이트되어야 합니다.
con = DriverManager.getConnection(url, user, password); String stm = "DELETE FROM hostdetails WHERE \"MAC\" = ?"; pst = con.prepareStatement(stm); pst.setString(1, "kzhdf"); pst.executeUpdate();
위 내용은 PostgreSQL에서 삭제할 때 Java 코드에서 '열이 존재하지 않습니다' 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!