>  기사  >  데이터 베이스  >  준비된 명령문에서 MySQLSyntaxErrorException이 발생하는 이유는 무엇입니까?

준비된 명령문에서 MySQLSyntaxErrorException이 발생하는 이유는 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-01 08:25:02804검색

Why Am I Getting a MySQLSyntaxErrorException with My Prepared Statement?

MySQL 준비 명령문 오류: MySQLSyntaxErrorException

Java 프로그래밍에서 SQL 문의 구문에 문제가 있는 경우 MySQLSyntaxErrorException이 발생합니다. . 이 오류가 발생할 수 있는 한 가지 시나리오는 매개 변수가 있는 쿼리와 함께 준비된 문을 사용할 때입니다. 구체적인 사례를 살펴보고 해결책을 제시해 보겠습니다.

주어진 코드에는 ad_id를 기반으로 Ads_tbl 테이블에서 데이터를 검색하기 위해 준비된 문을 사용하는 select 문이 포함되어 있습니다. 그러나 명령문을 실행할 때 오류가 발생합니다. SQL 구문에 오류가 있습니다. '?' 근처에서 사용할 올바른 구문은 MySQL 서버 버전에 해당하는 설명서를 확인하세요. 1행. 이는 SQL 문의 구문에 문제가 있음을 나타냅니다.

자세히 살펴보면 문제는 다음 행에 있습니다.

<code class="java">rs = stmt.executeQuery(selectSQL);</code>

준비된 명령문을 실행하는 올바른 방법 ExecutionQuery()에 대한 인수로 SQL 문 자체를 생략하는 것입니다. 이는 준비된 문이 이미 적절한 매개변수로 설정되어 있고, SQL 문 없이 실행 쿼리()를 호출하면 준비된 문이 실행되기 때문입니다.

따라서 코드를 다음과 같이 수정해야 합니다.

<code class="java">rs = stmt.executeQuery();</code>

이렇게 변경하면 준비된 명령문을 사용하여 SQL 문이 올바르게 실행되고 오류가 해결됩니다.

위 내용은 준비된 명령문에서 MySQLSyntaxErrorException이 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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