Using the Prepared Statement Twice

This JDBC tutorial helps us to use the PreparedStatement
interface of java.sql package twice in a program. According to our
requirement we can use the PreparedStatement object. The PreparedStatement object represents
the precompiled SQL statement. Whenever, the SQL statement is
precompiled then it stored in the PreparedStatement object which executes
the statement many times and it reduces the time duration of execution. The PreparedStatement
uses the '?' with SQL statement that provides the facility for
setting an appropriate conditions in it. See brief description below:
Description of program:
In this program we are going to retrieve the movies
name and it releases year from the 'movies' database table which releases
in the year 2002 and 2003 by using the PreparedStatement object. For this
to work, first of all we will establish the connection with MySQL
database by using the JDBC driver. When the connection has been
established then we will pass the SQL statement with some conditions in the prepareStatement method
that returns the PreparedStatement object, after this only we will
get the result according
to our requirements. If any problem arises in this
then it will display a message "SQL statement is not executed!".
Here is the code program:
import java.sql.*;
public class TwicePreparedStatement{
public static void main(String[] args) {
System.out.println("Twice use prepared statement example!\n");
Connection con = null;
PreparedStatement prest;
try{
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql:
//localhost:3306/jdbctutorial","root","root");
try{
String sql = "SELECT * FROM movies WHERE year_made = ?";
prest = con.prepareStatement(sql);
prest.setInt(1,2002);
ResultSet rs1 = prest.executeQuery();
System.out.println("List of movies that made in year 2002");
while (rs1.next()){
String mov_name = rs1.getString(1);
int mad_year = rs1.getInt(2);
System.out.println(mov_name + "\t- " + mad_year);
}
prest.setInt(1,2003);
ResultSet rs2 = prest.executeQuery();
System.out.println("List of movies that made in year 2003");
while (rs2.next()){
String mov_name = rs2.getString(1);
int mad_year = rs2.getInt(2);
System.out.println(mov_name + "\t- " + mad_year);
}
}
catch (SQLException s){
System.out.println("SQL statement is not executed!");
}
}
catch (Exception e){
e.printStackTrace();
}
}
}
|
Download this program:
Database Table: movies
| title |
year_made |
| alam ara |
1945 |
| Bagal bali |
2002 |
| Karan |
1996 |
| Bagban |
2003 |
| Ram Teri Ganga Maili |
2003 |
output of program:
C:\vinod\jdbc\jdbc\PreparedStatement>javac TwicePreparedStatement.java
C:\vinod\jdbc\jdbc\PreparedStatement>java TwicePreparedStatement
Twice use prepared statement example!
List of movies that made in year 2002
Bagal bali - 2002
List of movies that made in year 2003
Bagban - 2003
Ram Teri Ganga Maili - 2003 |

|