following is the list of changes to the current release 1.21RC3 of
SQLTools++ since the previous version SQLTools++ 1.20 RC3:
Features added (tracked on Sourceforge.net):
- 2094823: No connection to ASM instance possible
can connect now to an ASM instance. Although depending on your current
settings you get various error messages the connection is no longer
rejected but is successfully opened. The same should apply to RDBMS
instances not opened.
- 1992460: Add "Execute script from cursor position" option
Two new options and keyboard shortcuts have been added to the "Script" menu:
- Execute from cursor position (Default shortcut Ctrl+Alt+F5)
- Execute from cursor position (Halt on errors) (Default shortcut Ctrl+Alt+Shift+F5)
These can be used to run a script from the current cursor position and halt on errors, optionally
that you need to add the following two lines to your "Custom" keymap
("custom.keymap" located in the "Data" subdirectory) if you're using it
because the installer never attempts to modify the "Custom" keymap if
updating an existing installation:
- 1979440: Recognize DROP TYPE/CREATE TYPE operation
The type related SQL commands are now recognized and confirmed with appropriate messages (Type created/dropped)
- 1919413: Add SQLTools++ on sourceforge link to menu/distribution
The installation script now adds a link to the SQLTools++ Sourceforge.net site
- 1916777: (Optionally) do not populate Object List when connecting
For users that have to connect using a low bandwidth (e.g. WAN) connection two enhancements have been added:
1. If the schema browser is not visible it won't populate any lists initially (which was the case previously)
You can disable the "Known object cache" feature in the "PlusPlus"
settings which will prevent this in-memory cache from being populated
when establishing a connection
- 1914736: Consider "Load DDL" shortcut (Ctrl+F12) in Object List
feature was already available with the "Development" intermediate
build. You can press now the "Load DDL" keyboard shortcut in the
"Object List" (Schema Browser). This is the same as performing a
double-click or selecting "Load DDL" in the right-mouse button context
- 1914185: Allow "Copy Query Columns" for empty result set
You can copy now the query columns even if the result set is empty
Bugfixes (tracked on Sourceforge.net):
- 2270076: Snapshot DDL shows incomplete query for large query texts
built-in snapshot DDL generation code is quite basic anyway but
additionally showed incomplete query text if the length of the query
text was longer than 4000 chars. Now this has been extended to 64k
which hopefully is sufficient for most complex queries
- 2166142: Known objects are not properly redrawn when settings change
you change settings and the "Known object cache" is enabled then the
cache contents are refreshed every time you confirm the settings
changes. This refresh was not properly reflected in the editor (Only
when moving the cursor the content was redrawn). This has been fixed
- 2062502: Change "Generic Exception" dialog to point to Sourceforge
"Generic" exception dialog now points to the SQLTools++ Sourceforge.net
site and bug tracker rather than to the rather unmoderated original
- 2062499: Stack Overflow in Connect.cpp (429) when connection is lost
a background connection is established (e.g. with statistics or
DBMS_XPLAN.DISPLAY_CURSOR enabled) and the connection is lost a nasty
"Generic" exception used to show up. This has been fixed and should
work now even with these features enabled
- 2032463: Synonyms for remote objects are shown as "INVALID"
Synonyms for remote database objects used to be shown with status "INVALID". This has been fixed
- 2032446: Known objects followed by a dblink - wrong highlighting
If a known object was followed by a dblink the highlighting was incorrect. This has been fixed
- 2017327: Extract Schema DDL doesn't use "Use DBMS_METADATA" setting
The "Extract Schema DDL" didn't use the "Use DBMS_METADATA" setting of the corresponding setup dialog. This has been fixed
- 1991909: Highlighting error in case of comment /* */ followed by *
A minor highlighting error when a comment was immediately followed by an asterisk has been fixed
- 1988773: Incorrect representation of timestamp type in Object Viewer
The TIMESTAMP family related data types were not correctly represented in the Object Viewer window. This has been fixed
- 1988113: Run in external tool while disconnected
You get now an appropriate message instead of an screwed up external tool call if you're currenly not connected to a database
- 1949675: Doing describe (F12) with lost connection raises exception
Appropriate message shown instead of a "Generic" exception
- 1942383: "Use DBMS_METADATA" not saved in Settings dialog
Handling of this setting is now similar to the other settings, it used to be inconsistent
- 1942045: Editor's backup file error
a backup file cannot be created the actual file save is no longer
aborted and you should an explanation why the backup file could not be
- 1941453: Opening *.txt files results in "Language 'NONE' not found"
This annoying error has been fixed
- 1939328: Length of multibyte character columns incorrectly reported
you have multibyte character columns, e.g. NVARCHARs or multibyte
database character sets (e.g. UTF8) then the byte size of the
column was shown in the Object Viewer instead of the actual character
size. This has been fixed
- 1939306: Extended Block information is wrong for lines with TABs
TABs should be treated now correctly for the extended information shown when "Enhanced Visuals" is enabled
- 1939241: Visual match braces does not work with TAB chars
TABs should be treated now correctly for the "match braces" functionality when "Enhanced Visuals" is enabled
- 1938706: Object List using list representation - quick filter applied
list representation mode was broken when a quick filter has been
applied. The columns were resized to a minimum size so that the content
- 1928265: Extract Schema DDL: "Type parsing error: invalid header!"
type definitions lead to this error message sometimes. The handling of
these incomplete types has been changed accordingly so that the
message should no longer show up
- 1927183: DDL generated for deferrable disabled constraint is wrong
The keywords for a deferrable disabled constraint used to be in the wrong order. This has been fixed
- 1927173: Table Transformation Helper wrong GRANTS with DBMS_METADATA
using the "DBMS_METADATA" package to generate the DDL the GRANTS
generated were too many and about unrelated tables. This has been
"Execute and Step" script execution mode is broken in the 1.21RC3
release. Note that this issue has been fixed in the "Development Build"
Release available on the right hand side.
- Quoted identifiers (using "<IDENTIFIER>")
potentially are not correctly recognized by new "Known objects"
hightlighting since the current tokenizer does treat them as "normal"
identifiers and therefore breaks them apart in case of any special
- There seems to be a bug in the 10.2.0.1 Oracle
Client that causes all columns after a skipped LOB column (when
skipping LOB fetching is enabled in the Options) to be left blank. I
have not understood yet the exact root cause but when using a patched
or newer client (e.g. 10.2.0.3 or 220.127.116.11) the issue does not show up,
so it's somehow related to the Oracle Client version.
Here is the ever growing list of features I would like to add, but
haven't managed to cope with yet.
Still TOAD is the only tool that I'm aware of that offers a
comprehensive session browser
with advanced functionality like automatic grouping of Parallel Slaves
etc., but sometimes the session browser in TOAD behaves strangely. So
this is something I wish to have: A good session browser built into
SQLTools. But it's a tedious task...
filter in Object list
Oracle 9i and above, use Oracle DBMS_METADATA package for DDL extraction
- Edit Data feature: Extend existing Grid to
DML operations (INSERT/UPDATE/DELETE)
visual match: Highlight matching
braces/brackets etc. when moving cursor (more an OpenEditor issue)
fix Auto-Fit in Grid to data, which sometimes does not work for me as
Tip: Adjust the "Max
column length" setting in the "Data Grid 1" options. It means the
maximum number of chars to be used for calculating the column width.
- Multi-connection feature
Idea is to have support for multiple DB connections at the same time,
and you can select from a drop-down list of connections which you want
to use as current connection in your SQL worksheet. Currently you need
to start multiple instances of SQLTools++ to keep multiple connections
open at the same time.
- Threaded query support
Non-blocking execution of SQL
- Execution Time in SQL history
save files before SQL execute
password on connect should show a separate password entry dialog
- Preselect SYSDBA if connect as SYS
SQL file in external tool (e.g. SQL*Plus)
- Use DBA Views optionally
- Get rid of the hardcoded "RULE" hints currently
used all over the place in the queries when connected to 10g or later
published under the GNU General Public License (GPL). This means that
this tool can be used free of charge under the GPL. The formal terms of
the GPL license can be found at http://www.gnu.org/licenses/.
SQLTools++ on Sourceforge.net. Use Sourceforge.net to
submit bugs, request features and post messages in forums.
SQLTools++ current release version "SQLTools_pp 1.21 RC3"
Download the Windows installer here:
File size: 1.113.677 bytes
Virus checked on http://www.virustotal.com,
no viruses were found
Download the bare
binaries without installer (can be used directly from any device like
USB stick or similar):
File size: 1.196.976
Virus checked on http://www.virustotal.com,
no viruses were found
(contains only SQLTools.exe, not a full installation):
File size: 889.888
Virus checked on http://www.virustotal.com,
no viruses were found
The Development Build
is released as intermediate version containing the latest enhancements
and fixes, but it is not as thoroughly tested as the official release.
If you do not have a particular reason you should use the official
release. This Development Build in particular fixes the bug that the
original "Execute and Step" script execution mode is supposed to work again correctly.
In addition it fixes a couple of bugs, the detailed description of those
can be found on the Sourceforge.net "bug" tracker site searching for "Closed" bugs
or by reading the release notes of the "DevBuild" package on Sourceforge.net.
2602389 Execute and Step
2492670 wrong size of *CHAR* cols in a multi-byte char set database
2490082 Long numbers are highlighted with "identifier too long"
For further details regarding known issues of the current release
please check the changelog on the left hand side.
Please note that the
Development Build currently contains only the main executable. In order
to use it you need to have the 1.21 RC3 release already installed. You then need to replace the existing
"SQLTools.exe" with the "SQLTools.exe" contained in the provided
instructions: If you have already an existing installation
of the original SQLTools, I recommend to install SQLTools++ in
a separate directory as these versions are not compatible to each other
in terms of support files they require. If you have
customised your existing installation (e.g. keyboard
accelerators) you can try to move/migrate your changes to the new
installation, but be aware that new lines have been added to some of
the config files, so keep a backup of the original files in case the
application does not start anymore after modifying the configuration.
you intend to
update a previous SQLTools++ installation location, the installer
recognizes this and offers options to overwrite existing configuration
information. It is recommended to do that to get support for all new
features added. If you are using the "custom" keyboard configuration,
please note that this configuration file is never updated by the
installer. You therefore need to do a diff on the newly installed
"default" keyboard and your "custom" config file to be able to add the
new keyboard shortcuts available. If you do not add them, newly added
functions like "Execute script and halt on errors" will not have a
keyboard accelerator assigned in the "Custom" Keymap layout
the source tarball here:
Browse the CVS repository here:
The corresponding CVS tag for this release is: "sqltpp_1_21RC3_1"
You can download the source tarball also from the CVS repository
instructions: You need Visual C++ 2005, Oracle OCI 10g libraries and
header files (part of any regular Oracle database or client
installation) and the MFC libraries, which means that Visual C++ 2005
Express Edition is not sufficient since it does not contain the MFC
libraries and header files. You can download or order a trial version
of Visual Studio 2005 from the Microsoft homepage:
Professional Edition trial version available there is sufficient, you
don't need the Team Edition.
The Project file to use is: SQLTools2005.sln or
SQLTools2005.vcproj in the SQLTools
Note that it has not been
tested yet with the recently released Microsoft Visual Studio 2008.