0% found this document useful (0 votes)
51 views19 pages

SCD Lec 15 PDF

The document discusses JDBC and provides examples of using prepared statements in JDBC. It explains that prepared statements can improve efficiency when executing similar SQL statements multiple times by precompiling the statement. The example code shows how to use a prepared statement to update records by setting parameter values before executing the statement.

Uploaded by

Hanan Aslam
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
51 views19 pages

SCD Lec 15 PDF

The document discusses JDBC and provides examples of using prepared statements in JDBC. It explains that prepared statements can improve efficiency when executing similar SQL statements multiple times by precompiling the statement. The example code shows how to use a prepared statement to update records by setting parameter values before executing the statement.

Uploaded by

Hanan Aslam
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19

More on JDBC

JDBC 1
Useful Statement Methods (N-I)

executeQuery

◦ Executes the SQL query and returns the data in a


table (ResultSet)

◦ The resulting table may be empty but never null

ResultSet rs = stmt.executeQuery(“select * from


table");

JDBC 2
Example Code 15.1
Executing SQL DML Statements
/* This progarm will take two command line argument
that are used to update records in the database */
import java.sql.*; //step 1
public class JdbcDmlEx {
public static void main (String args [ ]){
try {
//steps 2 to 5
Class.forName(“driver name”);
Connection con=null;
con = DriverManager.getConnection(url, usr, pwd);

Statement st = con.createStatement();

JDBC 3
Example Code 15.1
Executing SQL DML Statements (cont.)
//Step 6: Execute the Query / DML
String addVar = args[0];
String nameVar = args[1];
String sql = “UPDATE Person ” +
“ SET address = ‘ “ + addVar + ” ’ ” +
“ WHERE name = ‘ “ + nameVar + ” ’ ” ;
int num = st.executeUpdate(sql);

//Step 7: Process the results of the query


System.out.println(num + “ records updated”);

JDBC 4
Example Code 15.1
Executing SQL DML Statements (cont.)
//Step 8: close the connection
con.close();
}catch (Exception sqlEx) {
System.out.println(sqlEx);
}
} //end main
}//end class

JDBC 5
Compile & Execute

Before execution

After execution

6 JDBC
Useful Statement Methods
(Continued)
getMaxRows( ) / setMaxRows(int)
◦ Determines the number of rows a ResultSet
may contain
◦ Unless explicitly set, the number of rows are
unlimited (return value of 0)

getQueryTimeout( ) / setQueryTimeout(int)
◦ Specifies the amount of a time (seconds) a driver
will wait for a STATEMENT to complete before
throwing a SQLException
JDBC 7
Different Types of Statements
Overview
◦ Through the Statement object, SQL statements
are sent to the database.
◦ Three types of statement objects are available:
1. Statement
for executing a simple SQL statements
2. PreparedStatement
for executing a precompiled SQL statement passing in
parameters
3. CallableStatement
for executing a database stored procedure

JDBC 8
Prepared Statements

JDBC 9
Prepared Statements (Precompiled
Queries)
Idea
◦ If you are going to execute similar SQL
statements multiple times, using “prepared”
(parameterized) statements can be more efficient

◦ Create a statement in standard form that is sent


to the database for compilation before actually
being used

◦ Each time you use it, you simply replace some of


the marked parameters (?) using some set
methods

JDBC 10
Prepared Statement, Example
PreparedStatement pStmt =
con.prepareStatement("UPDATE tableName " +
“SET columnName = ? " +
“WHERE columnName =
?");

First marked parameter(?) has index 1.

pStmt.setString(1, stringValue);
pStmt.setInt (2, intValue);

pStmt.executeUpdate();

JDBC 11
Example Code

Using Prepared Statements

JDBC 12
Example Code: Modify JdbcDmlEx.java 15.1
Executing Prepared Statements
/* Modification to the last example code 15.1,
to show the usage of prepared statements */
import java.sql.*; // step1
public class JdbcDmlEx {
public static void main (String args [ ]){
try {
//steps 2 to 4
Class.forName(“driver name”);
Connection con=null;
con = DriverManager.getConnection(url, usr, pwd);

JDBC 13
Example Code: Modify JdbcDmlEx.java 15.1
Executing Prepared Statements
//Step 5: Create the statement
PreparedStatement pStmt = null;

String sql = “UPDATE Person SET address = ? WHERE name = ? ” ;


pStmt = con.prepareStatement(sql);

//Step 6: Execute the Query


String addVar = args[0];
String nameVar = args[1];

pStmt.setString(1 , addVar);
pStmt.setString(2, nameVar);
// sql = “UPDATE Person SET address = “defence” WHERE name = “ali” ”

int num = pStmt.executeUpdate();

JDBC 14
Example Code: Modify JdbcDmlEx.java 15.1
Executing Prepared Statements

//Step 7: Process the results of the query


System.out.println(num + “ records updated”);

//Step 8: close the connection

}catch (Exception sqlEx) {


………..
}

} //end main
}//end class

JDBC 15
Compile & Execute

Before execution

After execution

16 JDBC
Task
Perform Insert/update/Delete operations
by designing following Screen:

JDBC 17
Result Set

JDBC 18
ResultSet
Row numbers
ResultSet
0 id Name Address phoneNum

1 1 ali model town 9203256

2 2 usman gulberg 8219065

3 3 raza defence 5173946

JDBC 19

You might also like