Introduction To JDBC

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

INTRODUCTION TO JDBC

• JDBC is used for accessing databases from Java applications


• Information is transferred from relations to objects and vice-versa
- databases optimized for searching/indexing

• Java code calls JDBC library


• JDBC loads a driver
• Driver talks to a particular database
• An application can work with several databases by using
all corresponding drivers

Steps
• Load the driver
• Define the connection URL & Establish the connection
• Create a Statement object
• Execute a query using the Statement
• Process the result
• Close the connection

Loading a database driver


In this step of the jdbc connection process, we load the driver class by calling
Class.forName() with the Driver class name as an argument. Once loaded, the Driver class
creates an instance of itself. A client can connect to Database Server through JDBC Driver. Since
most of the Database servers support ODBC driver therefore JDBC-ODBC Bridge driver is
commonly used.
The return type of the Class.forName (String ClassName) method is “Class”. Class is a class in
java.lang package.
Define the connection URL & Establish the connection
The JDBC DriverManager class defines objects which can connect Java
applications to a JDBC driver. DriverManager is considered the backbone of JDBC architecture.
DriverManager class manages the JDBC drivers that are installed on the system. Its
getConnection() method is used to establish a connection to a database. It uses a username,
password, and a jdbc url to establish a connection to the database and returns a connection
object. A jdbc Connection represents a session/connection with a specific database. An
application can have one or more connections with a single database, or it can have many
connections with different databases. A Connection object provides metadata i.e. information
about the database, tables, and fields. It also contains methods to deal with transactions.
JDBC URL Syntax:: jdbc: <subprotocol>: <subname>
JDBC URL Example:: jdbc: <subprotocol>: <subname>•Each driver has its own subprotocol
•Each subprotocol has its own syntax for the source. We’re using the jdbc odbc subprotocol, so
the DriverManager knows to use the sun.jdbc.odbc.JdbcOdbcDriver.
try{
Connection dbConnection=DriverManager.getConnection(url,”loginName”,”Password”)
}
catch( SQLException x ){
System.out.println( “Couldn’t get connection!” );
}

Create a Statement object Create a Statement object

Once a connection is obtained we can interact with the database. Connection


interface defines methods for interacting with the database via the established connection. To
execute SQL statements, you need to instantiate a Statement object from your connection object
by using the createStatement() method.
Statement statement = dbConnection.createStatement();
A statement object is used to send and execute SQL statements to a database.
Three kinds of Statements
Statement: Execute simple sql queries without parameters.
Statement createStatement()
Creates an SQL Statement object.
Prepared Statement: Execute precompiled sql queries with or without parameters.
PreparedStatement prepareStatement(String sql)
returns a new PreparedStatement object. PreparedStatement objects are precompiled
SQL statements.
Callable Statement: Execute a call to a database stored procedure.
CallableStatement prepareCall(String sql)
returns a new CallableStatement object. CallableStatement objects are SQL stored procedure call
statements.

Process the result

Statement interface defines methods that are used to interact with database via the execution of
SQL statements. The Statement class has three methods for executing statements:
executeQuery(), executeUpdate(), and execute(). For a SELECT statement, the method to use is
executeQuery . For statements that create or modify tables, the method to use is executeUpdate.
Note: Statements that create a table, alter a table, or drop a table are all examples of DDL
statements and are executed with the method executeUpdate. execute() executes an SQL
statement that is written as String object.
ResultSet provides access to a table of data generated by executing a Statement. The table rows
are retrieved in sequence. A ResultSet maintains a cursor pointing to its current row of data. The
next() method is used to successively step through the rows of the tabular results.
ResultSetMetaData Interface holds information on the types and properties of the columns in a
ResultSet. It is constructed from the Connection object.

Close the connection


Terminates the connection

You might also like