이를 위해 executeQuery()를 사용해야 합니다. 구문은 다음과 같습니다 -
yourPreparedStatementObject=yourConnectionObject.prepareStatement(yourQueryName); yourresultSetObject=yourPreparedStatementObject.executeQuery();
데이터베이스 '샘플'에 테이블을 만듭니다. 테이블을 생성하는 쿼리는 다음과 같습니다 -
mysql> create table JavaPreparedStatement -> ( -> Id int, -> Name varchar(10), -> Age int -> ); Query OK, 0 rows affected (0.89 sec)
삽입 명령을 사용하여 테이블에 일부 레코드를 삽입하십시오. 쿼리는 다음과 같습니다 -
mysql> insert into JavaPreparedStatement values(1,'Larry',23); Query OK, 1 row affected (0.16 sec) mysql> insert into JavaPreparedStatement values(2,'Sam',25); Query OK, 1 row affected (0.21 sec) mysql> insert into JavaPreparedStatement values(3,'Mike',26); Query OK, 1 row affected (0.12 sec)
이제 Java PreparedStatement를 사용하여 테이블의 모든 레코드를 표시할 수 있습니다. executeQuery() 메서드를 사용해야 합니다.
다음은 자바 코드입니다 -
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class PreparedStatementSelectQueryDemo {
public static void main(String[] args) {
String JdbcURL = "jdbc:mysql://localhost:3306/sample?useSSL=false";
String Username = "root";
String password = "123456";
Connection con = null;
PreparedStatement pstmt = null;
ResultSet rst = null;
String myQuery = "select Id,Name,Age from JavaPreparedStatement";
try {
con = DriverManager.getConnection(JdbcURL, Username, password);
pstmt = con.prepareStatement(myQuery);
rst = pstmt.executeQuery();
System.out.println("Id\t\tName\t\tAge\n");
while(rst.next()) {
System.out.print(rst.getInt(1));
System.out.print("\t\t"+rst.getString(2));
System.out.print("\t\t"+rst.getInt(3));
System.out.println();
}
} catch(Exception exec) {
exec.printStackTrace();
}
}
} 다음은 Java 코드의 스냅샷입니다. -

다음은 샘플 출력의 스냅샷입니다 -
