Contents | Prev | Next JDBCTM Guide: Getting Started


		JDBC Version 1.01 Release Notes


What is JDBC?
-----------------------------
JDBC is the Java Database Connectivity API.

The JDBC API defines Java classes to represent database connections,
SQL statements, result sets, database metadata, etc. It allows a Java
programmer to issue SQL statements and process the results.

The JDBC API is implemented via a driver manager that can support
multiple drivers connecting to different databases. JDBC drivers can
either be entirely written in Java so that they can be downloaded as
part of an applet, or they can be implemented using native methods to
bridge to existing database access libraries.


Who to contact?
---------------
You can contact us at jdbc@wombat.eng.sun.com


What environments are supported?
-------------------------------------
JDBC itself is implemented entirely in Java and will run anywhere the JDK 
is hosted. Use of JDBC requires the use of one or more JDBC drivers. 
Each driver will have its own database and platform restrictions.


Version 1.01 Changes
--------------------
No changes were made to the JDBC API; however, a number of
clarifications have been added to the 1.01 version. In addition, a more
efficient implementation of the Numeric class is provided; this
contains some addition methods.

1. Use ODBC driver specific precision for setXXX and setObject

2. Removed the JDBC certified driver requirement for
supportsDifferentTableCorrelationNames; this is a restriction that JDBC
drivers do not have to impose.

3. The description of the various SQL identifier case sensitivity and
case storage modes were confusing and as a result the JDBC driver
requirements were not correct. The descriptions were improved and the
driver requirements were corrected.

4. Added a note that JDBC java.io.stream.available() may return 0
whether or note data is available. JDBC drivers may not be able to
provide an accurate count of available data.

5. Statement.getMoreResults termination conditions were not documented
correctly . This was corrected.

6. Noted that Statement.executeUpdate implicitly closes the statement's
current result set.

7. The Driver comments were changed to note that a static section
should create an instance and register it. This was a documentation
error.

8. Remove synchronized from DriverManager.println to prevent deadlocks
with other threads raising exceptions during connect.

9. Fixed parameters for getCrossReference. They were documented in
error.

10. Inhibited SQLException tracing for SQLWarnings; added stack trace

11. Add the following to DatabaseMetaData
 * A SQLException will be thrown if a driver does not support a meta
 * data method.  In the case of methods that returning a ResultSet,
 * either a ResultSet (which may be empty) is returned or a
 * SQLException is throw.

12. Note that executeQuery never returns a null ResultSet ref

13. Clarify auto commit - 

     * The commit occurs when the statement completes or the next
     * execute occurs, whichever comes first. In the case of
     * statements returning a ResultSet, the statement completes when
     * the last row of the ResultSet has been retrieved or the
     * ResultSet has been closed. In advanced cases, a single
     * statement may return multiple results as well as output
     * parameter values. Here the commit occurs when all results and
     * output param values have been retrieved.

14. Remove ColumnName from the getTablePrivileges ResultSet; this was
added in error.

15. Added null checks for DriverManager getConnection parameters

16. Noted that CallableStatement ResultSets and update counts should be
processed prior to getting output parameter values.


Installation
------------
See the Java web page for info on installing the JDK.

JDBC is provided as both a compressed tar file and a zip file. Use the
appropriate utility for the one you've selected.

If your are installing a zip file be sure to use a version of unzip
that retains long file names and the original directory names.

JDBC installs itself into the jdbc directory. Be sure to add jdbc/classes
to your Java CLASSPATH.


JDBC Implementation
-------------------
JDBC is implemented by the java.sql package. 

java.sql contains the following classes:

DriverManager
  The DriverManager passes connection requests to the JDBC drivers

DriverPropertyInfo
  An instance of a JDBC driver connection property

Types
  A list of SQL data type symbolic constants

Date
  An extension of java.util.Data that more closesly matches a SQL data

Time
  An extension of java.util.Data that more closesly matches a SQL time


Timestamp
  An extension of java.util.Data that more closesly matches a SQL timestamp

Numeric
  An extended precision numeric type that provides a full set of extended
  precision arithmetic operations. This matches the SQL numeric type.

java.sql contains the following interfaces (JDBC drivers provide their
implementation:

Driver
  A class through which the DriverManager (and optionally users) access
  JDBC drivers.

Connection
  A database connection

Statement
  A class that executes simple SQL statements

PreparedStatement
  A class specialized for handling parametric SQL statements

CallableStatement
  A class specialized for handling database stored procedure calls

ResultSet
  A class for accessing the tabular results produced by executing a SQL
  query

DatabaseMetaData
  A class used to access a variety of information about a Connection's
  DBMS and database.

ResultSetMetaData
  A class that is used to access a variety of information describing a
  ResultSet's attributes


Debugging
---------

The DriverManager provides a trace mechanism that is used by JDBC
drivers to provide a trace of their method calls. 

The following line of code enables tracing and sends it to standard
out:

	java.sql.DriverManager.setLogStream(java.lang.System.out);


General Notes
-------------
JDBC was compiled with JDK 1.0.2.


Contents | Prev | Next
jdbc@wombat.sun.com or jdbc-odbc@wombat.sun.com
Copyright © 1996 Sun Microsystems, Inc. All rights reserved.