How to insert and delete a row programmatically? (new
feature in JDBC 2.0)
Make sure the resultset is updatable.
1. move the cursor to the specific position.
2. set value for each column.
uprs.moveToInsertRow();//to set up for insert
3. call inserRow() method to finish the row insert
To delete a row: move to the specific position and call
uprs.deleteRow();//delete row 5
To see the changes call refreshRow();
What are the two major components of JDBC?
One implementation interface for database manufacturers,
the other implementation interface for application and
What is JDBC Driver interface?
The JDBC Driver interface provides vendor-specific
implementations of the abstract classes provided by the
JDBC API. Each vendor driver must provide
implementations of the
CallableStatement, ResultSet and Driver.
How do I retrieve a whole row of data at once, instead
of calling an individual ResultSet.getXXX method for
The ResultSet.getXXX methods are the only way to
retrieve data from a ResultSet object, which means that
you have to make a method call for each column of a row.
It is unlikely that this is the cause of a performance
problem, however, because it is difficult to see how a
column could be fetched without at least the cost of a
function call in any scenario. We welcome input from
developers on this issue.
What are the common tasks of JDBC?
Create an instance of a JDBC driver or load JDBC drivers
Register a driver
Specify a database
Open a database connection
Submit a query
Why does the ODBC driver manager return 'Data source
name not found and no default driver specified Vendor:
This type of error occurs during an attempt to connect
to a database with the bridge. First, note that the
error is coming from the ODBC driver manager. This
indicates that the bridge-which is a normal ODBC
client-has successfully called ODBC, so the problem
isn't due to native libraries not being present. In this
case, it appears that the error is due to the fact that
an ODBC DSN (data source name) needs to be configured on
the client machine. Developers often forget to do this,
thinking that the bridge will magically find the DSN
they configured on their remote server machine
How to use JDBC to connect Microsoft Access?
There is a specific tutorial at javacamp.org. Check it
What are four types of JDBC driver?
Which type of JDBC driver is the fastest one?
Type 1 Drivers
Bridge drivers such as the jdbc-odbc bridge. They rely
on an intermediary such as ODBC to transfer the SQL
calls to the database and also often rely on native
code. It is not a serious solution for an application
Type 2 Drivers
Use the existing database API to communicate with the
database on the client. Faster than Type 1, but need
native code and require additional permissions to work
in an applet. Client machine requires software to run.
Type 3 Drivers
JDBC-Net pure Java driver. It translates JDBC calls to a
DBMS-independent network protocol, which is then
translated to a DBMS protocol by a server. Flexible.
Pure Java and no native code.
Type 4 Drivers
Native-protocol pure Java driver. It converts JDBC calls
directly into the network protocol used by DBMSs. This
allows a direct call from the client machine to the DBMS
server. It doesn't need any special native code on the
Recommended by Sun's tutorial, driver type 1 and 2 are
interim solutions where direct pure Java drivers are not
yet available. Driver type 3 and 4 are the preferred way
to access databases using the JDBC API, because they
offer all the advantages of Java technology, including
automatic installation. For more info, visit Sun JDBC
JDBC Net pure Java driver(Type IV) is the fastest driver
because it converts the jdbc calls into vendor specific
protocol calls and it directly interacts with the
Are all the required JDBC drivers to establish
connectivity to my database part of the JDK?
No. There aren't any JDBC technology-enabled drivers
bundled with the JDK 1.1.x or Java 2 Platform releases
other than the JDBC-ODBC Bridge. So, developers need to
get a driver and install it before they can connect to a
database. We are considering bundling JDBC technology-
enabled drivers in the future.
Is the JDBC-ODBC Bridge multi-threaded?
No. The JDBC-ODBC Bridge does not support concurrent
access from different threads. The JDBC-ODBC Bridge uses
synchronized methods to serialize all of the calls that
it makes to ODBC. Multi-threaded Java programs may use
the Bridge, but they won't get the advantages of
multi-threading. In addition, deadlocks can occur
between locks held in the database and the semaphore
used by the Bridge. We are thinking about removing the
synchronized methods in the future. They were added
originally to make things simple for folks writing Java
programs that use a single-threaded ODBC driver.
Page Numbers :