>Java >java지도 시간 >SQL 쿼리에서 테이블 이름을 설정하기 위해 준비된 문을 사용할 수 없는 이유는 무엇입니까?

SQL 쿼리에서 테이블 이름을 설정하기 위해 준비된 문을 사용할 수 없는 이유는 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-10 05:32:14397검색

Why Can't I Use Prepared Statements to Set Table Names in SQL Queries?

Prepared 문을 사용하여 테이블 이름 설정

Prepared 문으로 작업할 때는 해당 제한 사항을 이해하는 것이 중요합니다. 주어진 예에서 개발자는 매개변수 대체를 사용하여 테이블 이름을 설정하려고 시도하는 동안 오류가 발생했습니다.

문제:

쿼리에는 소스로 테이블 이름이 필요합니다. 데이터 검색을 위해 "SELECT" 문에서 테이블 이름이 다음과 같은 매개변수를 사용했습니다. 예상됩니다.

해결 방법:

준비된 문 매개 변수를 사용하여 테이블 이름을 동적으로 설정할 수 없습니다. 대신 쿼리 자체 내에 하드코딩되어야 합니다. 제공된 솔루션은 쿼리 내에서 테이블 이름을 문자열로 명시적으로 포함하도록 코드를 변경합니다.

private String query1 = "SELECT plantID, edrman, plant, vaxnode FROM [" + reportDate + "?]";

하드코딩된 테이블 이름과 매개변수(?)를 결합하면 쿼리가 날짜 구성 요소를 동적으로 업데이트할 수 있습니다. 올바른 테이블에 대한 참조를 유지합니다.

위 내용은 SQL 쿼리에서 테이블 이름을 설정하기 위해 준비된 문을 사용할 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.