Skip navigation links

Introduction

This document lists changes made to the Database Explorer API/SPI.


Index of APIs

Incompatible changes by date

Fuller descriptions of all changes can be found below (follow links).

Not all deprecations are listed here, assuming that the deprecated APIs continue to essentially work. For a full deprecation list, please consult the Javadoc.

All changes by date

Changes by version

These API specification versions may be used to indicate that a module requires a certain API feature in order to function. For example, if you see here a feature you need which is labelled 1.20, your manifest should contain in its main attributes the line:

OpenIDE-Module-Module-Dependencies: org.netbeans.api.db.explorer > 1.20

Changes by affected class

org.netbeans.api.db.explorer.ConnectionManager

org.netbeans.api.db.explorer.DatabaseConnection

org.netbeans.api.db.explorer.support.DatabaseExplorerUIs

org.netbeans.api.db.explorer.DatabaseMetaDataTransfer

org.netbeans.api.db.explorer.JDBCDriver

org.netbeans.api.db.explorer.JDBCDriverManager

org.netbeans.api.db.sql.support.SQLIdentifiers


Details of all changes by API and date


Database Explorer API

Return a fallback quoter if no DatabaseMetaData is available.

Dec 4 '21; API spec. version: 1.84; affected top-level classes: SQLIdentifiers; made by: matthiasblaesing
SQLIdentifiers now returns a fallback Quoter if there is no DatabaseMetaData. The fallback quoter supports unquoting most common identifier quoting formats, uses SQL-99 quotes for quoting and quotes all identifiers, that don't start with an ascii character or contain ascii non-characters or non-numbers.

Configure usage of scrollable cursors.

Jun 10 '13; API spec. version: 1.57; affected top-level classes: DatabaseConnection; made by: jhavlin; issues: #231030
Users can enable or disable using of scrollable cursors, which can make queries faster, but also can cause problems for some drivers.

Enable editting of connection properties for db connections

Feb 13 '13; API spec. version: 1.53; affected top-level classes: DatabaseConnection; made by: matthias42; issues: #197408
Users can specify connection properties in the UI now. The properties can be retrieved using new method DatabaseConnection.getConnectionProperties(). There is also a new factory method DatabaseConnection.create() that accepts an object with additional connection properties.

Allow specify display name of the DatabaseConnection

Nov 22 '10; API spec. version: 1.42; affected top-level classes: DatabaseConnection; made by: jrechtacek; issues: #192150
Allow to specify the display name of the connection as it shows under the Databases node. Added new factory method to create database connection with given display name.

Add a DatabaseConnection.getJDBCDriver() method

May 6 '09; API spec. version: 1.32; affected top-level classes: DatabaseConnection; made by: jrechtacek; issues: #90210
Currently there is no easy way to get the JDBCDriver instance that a DatabaseConnection will use / used to connect to a database. A DatabaseConnection.getJDBCDriver() method should be added.

Add ability to ensure a JDBC connection is valid

Aug 27 '08; API spec. version: 1.30; affected top-level classes: DatabaseConnection; made by: davidvc; issues: #143837
This change allows you to ensure that the physical database connection obtained from a DatabaseConnection is valid or is null .

Add support for always quoting and for unquoting SQL identifiers.

Aug 15 '08; API spec. version: 1.29; affected top-level classes: SQLIdentifiers; made by: abadea; issues: #143441
Add support for always quoting and for unquoting SQL identifiers.

Add ability to get the underlying JDBC Driver instance for a JDBCDriver

Jun 27 '08; API spec. version: 1.28; affected top-level classes: JDBCDriver; made by: davidvc; issues: #134309
This change makes it possible to get the underlying Driver class. Without this, the only way you can obtain the driver is to create your own classloader that has the driver classpath URLs in its search list and then load the driver. This makes things much easier.

Add ability to show the Add JDBC Driver dialog synchronously

Jun 27 '08; API spec. version: 1.27; affected top-level classes: JDBCDriverManager; made by: davidvc; issues: #129633
Add the ability to show the Add Driver dialog synchronously. This must be run on the AWT event thread, but it returns the JDBCDriver that was added.

Add ability to connect a database connection directly with no UI

Jun 26 '08; API spec. version: 1.26; affected top-level classes: ConnectionManager; made by: davidvc; issues: #128546
Add the ability to connect a database connection directly from the API without having any kind of UI pop up, be it a dialog or a progress window.

Add ability to remove a database connection

Feb 26 '08; API spec. version: 1.25; affected top-level classes: ConnectionManager; made by: davidvc; issues: #128502
Add the ability to remove a database connection from the Database Explorer connection list.

Made Database Explorer API stable

Nov 1 '07; API spec. version: 1.24; made by: abadea; issues: #120097
The stability level of the Database Explorer API is changed to stable.

Allow user to save password

Oct 5 '07; API spec. version: 1.23; made by: davidvc; issues: #87600
This change updated the connection DTD to 1.1, adding a password element. In the Database Explorer implementation, we allow the user to indicate they want to save the password. This works across invocations of the VM.

Added utility class for working with SQL identifiers

Sep 12 '07; API spec. version: 1.22; affected top-level classes: SQLIdentifiers; made by: davidvc; issues: #115075
This change adds a SQLIdentifiers.Quoter class which provides a utility method for quoting SQL identifiers.

Added support for dragging and dropping nodes from the Database Explorer

Jun 17 '07; API spec. version: 1.21; affected top-level classes: DatabaseMetaDataTransfer; made by: abadea; issues: #96200
This change adds a DatabaseMetaDataTransfer class which contains DataFlavors for database objects and nested classes representing those database objects during a drag and drop transfer.

Addded a method to open the NewConnectionDialog with an user and password pre-filled and methods which open the NewConnectionDialog and return the newly added database connection

Jul 20 '06; API spec. version: 1.19; affected top-level classes: ConnectionManager; made by: abadea; issues: #80629
This change adds a showAddConnectionDialog which opens the New Connection Dialog while pre-filling a specified database user and password. It also adds showAddConnectionDialogFromEventThread methods which are counterparts to the showAddConnectionDialog methods, with the difference that they return the newly added database connection, but must be called from the event dispatching thread.

Addded an utility method to fill a combo box with database connections

Mar 17 '06; API spec. version: 1.18; affected top-level classes: DatabaseExplorerUIs; made by: abadea; issues: #73713
This change adds the DatabaseExplorerUIs.connect() method, which populates a JComboBox with the list of connections from a ConnectionManager.

Initial version released

Sep 12 '05; API spec. version: 1.13; made by: abadea
First initial release of the Database Explorer API.

Concept of preferred connection introduced

(date unknown); API spec. version: 1.83; affected top-level classes: ConnectionManager; made by: sdedic
Preferred connection can be defined to be used throughout the IDE as the default or fallback one.

Provided access to connection nodes list.

(date unknown); API spec. version: 1.82; affected top-level classes: DatabaseExplorerUIs; made by: sdedic
A utility that provides a Node hierarchy for defined database connections, including disconnected (but defined) ones. Usable for selectors etc.