집 >데이터 베이스 >MySQL 튜토리얼 >열 이름을 preparedStatements의 입력 매개변수로 사용할 수 있습니까?
PreparedStatements에서 열 이름을 입력 매개변수로 사용
질문:
열 이름을 다음과 같이 사용할 수 있습니까? "SELECT * FROM A,B WHERE와 같은 ReadyStatement 쿼리의 입력 매개변수 A.X = ?" 매개변수로 B.Y에 값을 할당합니까?
답변:
아니요, JDBC는 열 이름을 입력 매개변수로 사용하는 것을 허용하지 않습니다. ReadyStatements는 열 값만 매개변수로 허용합니다. SQL 문을 동적으로 수정하려면 preparedStatement를 생성하기 전에 수정해야 합니다.
제공된 예제 사용:
Table A has Attribute X + others Table B has Attribute Y + others
PreparedStatement는 다음과 같이 구성할 수 있습니다.
String sql = "SELECT * FROM A, B WHERE A.X = ?"; PreparedStatement statement = connection.prepareStatement(sql); statement.setString(1, "value for A.X");
단, "B.Y"는 컬럼명이므로 동적으로 매개변수를 설정할 수는 없습니다.
위 내용은 열 이름을 preparedStatements의 입력 매개변수로 사용할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!