Help Is a Feature in Itself
The Help function deserves mention as a feature because, first, it's so well integrated into SQL Developer, and second, it goes beyond SQL Developer help to provide what's essentially a basic Oracle tutorial. In addition to SQL Developer help, Help chapters cover the SQL basics, including Oracle object management basics, PL/SQL basics, triggers, SQL*Plus, which can be launched from SQL Developer, and an overview of globalization support.
For support beyond the Help file, you have two choices. If you're using SQL Developer to access databases running on licensed Oracle software, you can post support requests on MetaLink for SQL Developer. If you're running a development or evaluation copy of the database software, or running Oracle's free XE database, turn to the SQL Developer forum on OTN for support. The Project Raptor team monitors the form and responds quickly to most posted questions. The forum itself was been down intermittently during the writing of this article, perhaps due to SQL Developer's popularity, but it usually came back up within a few hours.
The Run Manager keeps track of interruptible processes. Running queries don't seem to show up, but debug sessions do. Click the STOP icon (red square) to stop a running debug session.
Like JDeveloper, Oracle's SQL Developer supports plug-ins, or "extensions." To add an extension, download the file from the author's site and unzip it into <SQLDeveloper>/jdev/extensions. Proceed at your own risk, of course! Here are some extensions to get you started:
- Two performance tuning and monitoring extensions are available at FourthElephant.com.
- GeoRaptor is a GIS extension for SQL Developer on SourceForge. GeoRaptor is at 5Production/Stable.
Current SQL Developer Limitations
In addition to the usual handful of bugs that accompany a first release, this first version of SQL Developer has some big headaches for the visually impaired and for non-English speakers.
For the visually impaired, some known issues around accessibility with JAWS prevent SQL Developer from reading some information. See the README documentation for details.
For non-English-speaking users, Version 1.0 has very limited support for globalization. Currently, the ASCII character set is supported for entry and display. Non-ASCII characters can be displayed only if the following conditions are met (to quote the README):
- "The character belongs to the database or to the national character set, depending on the datatype of the value containing the character, and
- "The script to which the character belongs is supported by the JRE installation on which SQL Developer is runningfor example, appropriate fonts are availableand
- "The script does not require complex rendering, e.g. it is written left-to-right with no ligatures or character reordering."
The README goes on to note that complex or bidirectional scripts, like Arabic, Hebrew, or Devanagari, may work, but they are untested, not guaranteed, and may not align properly or appear in the right direction. "Full support for those languages is planned for a future release."
Further, the SQL Developer interface in v. 1.0 is provided in English only, with more languages planned for a future release. The README also warns of a dozen known globalization bugs.
An Auspicious Debut
SQL Developer is a good tool with a lot of promise. Installation is a snap, and it's supported, stable, and free. Its mature IDE platform presents a well-thought-out interface that's very usable and very functional. I found SQL Developer to be stable with relatively few bugs outside the known issues, though some users may find the known issues insurmountable. I hope to see the few quirks that SQL Developer does have, such as the difficulty of editing or debugging code from a file, ironed out.
The debugger is slower stepping through code than I'd like, and SQL Developer doesn't have all the functionality of the most popular commercial tools. That being said, for a version 1.0 release of a free tool, it exceeded my expectations. And I'm eager to see it mature.