Overview of SqlDbx

Welcome to SqlDbx

SqlDbx is database administration and SQL development IDE focused on application developers who work in heterogeneous database environments.

Features at a glance:

  • High performance native support for major Database Servers including Microsoft, Sybase, Oracle and IBM DB2/UDB
  • Browse / Explore Servers
  • Fast, intelligent, extensive and highly customizable Intellisense
  • Advanced script Editor with Syntax highlighting, Auto Complete, Speed Typing, Drag/Drop, Undo/Redo, Find/Replace
  • Unicode support
  • Visual Data Diff
  • SQL Scripting
  • SQL Formatter / Beautifier
  • Generate SELECT, INSERT, UPDATE, DELETE, WHERE IN data modification statements directly from result grid
  • SQL templates with replaceable formal parameters
  • Import / Export to CSV, XML, Excel
  • Schema object browser
  • SQL statement history
  • Favorite objects
  • Search in Database and in Result grid
  • Directly edit table data in Result grid
  • Display query plan and query statistics
  • Simple deployment and removal. No dll's or other dependencies. Just one executable (1.4 meg.)

Supported DBMS Systems

  • Oracle ® 8i - 11g
  • Microsoft ® SQL Server 6.5 - 2008
  • IBM DB2 LUW ® 7.x - 9.x
  • IBM DB2 z/OS ® 7.x - 9.x
  • IBM DB2 iSeries ® 5.x - 7.x
  • Sybase ASE ® 10.x - 15.x
  • Sybase Anywhere ® 9.x - 12.x
  • Sybase IQ ® 12.5 - 15.x
  • MySQL ® 5.x
  • Kdb+ ®
  • ODBC 3.0 compliant sources


Using SqlDbx

SqlDbx window divided into three views: Object View, Script Editor and Results View

Editor Shortcuts

Grid Shortcuts

SQL Script Editor

Intellisense

Script Variables

SQL Templates

Speed Typing

Visual Diff

Export / Import

Generate Scripts

Server Explorer

Options

Command Line options


Quick Start

When You start SqlDbx it automatically shows Server Login dialog. Select correct Server type, enter Server name, Database, User and Password and click button Login. If server found and client software installed correctly new SQL Editor window will open.

Set Alias button can be used to create alternate user friendly name for the Server. Also it is useful when you connect to the same server using different credentials. "Production" check box allows to specify alternate text and background colors. This allows to visually differentiate between production and development Servers. Set Alias button allows to create multiple aliases for the same Server. You can create it by directly typing into Server combo box. Make sure that actual Server name enclosed between "(" and ")"

Using SqlDbx

SqlDbx portable

If you wish to use SqlDbx in portable mode create empty SqlDbx.ini file in a same directory where SqlDbx.exe located. After you start SqlDbx it will run in portable mode.

In this mode SqlDbx will not make any changes to registry or create directories / files on a computer.


Editor Keyboard Shortcuts

Load / Save

Ctrl + N | New Script
Ctrl + O | Open file
Ctrl + S | Save active script
Ctrl + Shift + S | Save active script with different name
Ctrl + W | Close active script tab
Ctrl + Shift + W | Close active Result tab

Cursor Movement

Left | Move cursor one character left
Right | Move cursor one character right
Up | Move cursor one line up
Down | Move cursor one line down
Ctrl + Up | Scroll screen up
Ctrl + Down | Scroll screen down
Ctrl + Right | Move cursor one word right
Ctrl + Left | Move cursor one word left
End | Move to end of line
Ctrl + End | Move to end of last line in file
Home | Move to beginning of line
Ctrl + Home | Move to beginning of file
Ctrl + G | Go To Line

Edit

Ctrl + Y | Delete current line
Ctrl + Shift + Delete | Delete all
Ctrl + Delete | Delete to start of word to the right
Ctrl + Backspace | Delete to start of word to the left
Insert | Switch between overwrite and insert mode
Ctrl + C | Copy to Clipboard
Ctrl + V | Paste from Clipboard formatted as SQL
Ctrl + Shift + V | Paste from Clipboard Excel style
Alt + Shift + V | Paste as column block
Ctrl + Alt + V | Paste as column block (fill)
Ctrl + X | Cut to Clipboard
Ctrl + Z, Alt + Back | Undo
Shift + Tab | Indent to the left
Ctrl + Shift + C | Comment selection out
Ctrl + Shift + R | Un comment selection
Ctrl + Shift + U | Convert selection to upper case
Ctrl + Shift + L | Convert selection to lower case
Ctrl + Shift + M | Replace template parameters
Ctrl + Shift + Up | Move current line up
Ctrl + Shift + Down | Move current line down

Selection

Ctrl + A | Select all
Alt + Left Mouse Button | Start column (block) selection
Alt + C | Set block selection on. Use Shift + Arrow keys to extend selection
Shift + Left Mouse Button | Extend selection to click point
Ctrl + B | Select SQL block starting from current position
Ctrl + Shift + B | Select current block delimited by empty lines
Shift +Left | Extend selection to the Left
Shift + Right | Extend selection to the right
Shift + Up | Extend selection one line up
Shift + Down | Extend selection one line down
Shift + Home | Extend selection to the beginning
Shift + End | Extend selection to the end
Shift + Page Down | Extend selection one page down
Shift + Page Up | Extend selection one page up
Ctrl + Shift + Home | Extend selection from current position to the beginning of script
Ctrl + Shift + End | Extend selection from current position to the end of script
Ctrl + Shift + Left | Extend selection to the beginning of current word
Ctrl + Shift + Right | Extend selection to the end of current word
Ctrl + M | Highlight all words like the one under the cursor

Find / Replace / Diff

Ctrl + F | Show Find dialog
Ctrl + H | Show Replace dialog
F6 | Quick Find
F3 | Find next
Shift + F3 | Find previous
Ctrl + Shift + Q | Quick Diff Script
Ctrl + Shfit + D | Quick Diff Result Set

Query / SQL

Ctrl + E, F5 | Execute SQL statement
Ctrl + Shift + E, Shift + F5 | Execute SQL statement. Results in new window
Ctrl + Enter | Execute SQL statement on current line
Ctrl + Shift + Enter | Execute SQL statement on current line. Results in new window
Ctrl + F5 | Parse SQL statement
Ctrl + K | Execute last Result Grid SQL statement
Ctrl + J | Format selected SQL
Alt + F1 | Object Properties under cursor
Alt + F2 | Script object under cursor to new window
Alt + F3 | Find object under cusrsor in Object View
F4 | Refresh Object View
F7 | List Tables
F8 | List User Procedures and Functions
F9 | List System Procedures and Functions
F12 | Begin Transaction
Ctrl + F12 | Commit Transaction
Ctrl + Shift + F12 | Rollback Transaction

Bookmarks

Ctrl + F2 | Toggle bookmark
F2 | Go to next bookmark
Shift + F2 | Go to previous bookmark
Ctrl + Shift + F2 | Clear all bookmarks

Miscellaneous

Ctrl + Page Down | Next Script window
Ctrl + Page Up | Previous Script window
Ctrl + 1 | Switch focus between Editor and Results
Ctrl + 2 | Switch focus between Editor and Object List
Ctrl + 3 | Set focus to Script Editor
F11 | Maximize Editor windox
Ctrl + F11 | Maximize Results window
Shift + F11 | Toggle Object View


Results Grid Keyboard Shortcuts

Cursor Movement

Up | Move one cell up
Down | Move one cell down
Right | Move one cell right
Left | Move one cell left
Ctrl + Up | Move up to the edge of data region*
Ctrl + Down | Move down to the edge of data region*
Ctrl + Right | Move right to the edge of data region*
Ctrl + Left | Move left to the edge of data region*
End | Enables "End" mode
Ctrl + End | Move to the last grid cell
Home | Move to the first column in current row
Ctrl + Home | Move to the first grid cell

Selection

Left Mouse Button in top left corner | Select all
Shift + Left Mouse Button on Column Header | Select all column
Shift + Left Mouse Button in grid area | Extend selection from active cell to clicked cell
Left Mouse Button on Row Header | Select all row
Ctrl + Left Mouse Button | Begin new selection without clearing current selection
Shift + Left | Extend selection one cell left
Shift + Right | Extend selection one cell right
Shift + Home | Extend selection to the first grid cell
Shift + End | Extend selection to the last grid cell
Shift + Down | Extend selection one cell down
Shift + Up | Extend selection one cell up
Shift + Page Down | Extend selection one page down
Shift + Page Up | Extend selection one page up
Ctrl + Shift + Home | Extend selection to the first grid cell
Ctrl + Shift + End | Extend selection to the last grid cell
Ctrl + Shift + Left | Extend selection left to the edge of data region*
Ctrl + Shift + Right | Extend selection right to the edge of data region*
Ctrl + Shift + Up | Extend selection up to the edge of data region*
Ctrl + Shift + Down | Extend selection down to the edge of data region*

Clipboard

Ctrl + C | Copy to Clipboard
Ctrl + Shift + C | Copy to Clipboard with column headers
Ctrl + Alt + C | Copy to Clipboard column headers only

Miscellaneous

Ctrl + Shift + N | New Result tab
Ctrl + Shift + D | Close active Result tab
Left mouse button double click on column header | Toggle column sort ascending / descending
Ctrl + Left mouse button on column header | Add column sort
Left mouse button on column header and drag | Rearrange columns

* - data region: A range of cells that contains data and is bounded by empty cells


Script Editor

SQL Editor window provides broad range of editing capabilities. Look and feel can be configured in Options Dialog on Editor page. You can drag and drop text between different windows.

To open a new script window press Ctrl + N

SQL Editor Keyboard Shortcuts

Editing Scripts

Executing Scripts

Script Variables

Script Commands


Intellisense

Using Intellisense

Intellisense is configured in Options dialog on Editor page.

Intellisense and temporary tables in MS Sql Server and Sybase ASE. For intellisense to work with temporary they have to be created and then "referenced". Referenced means that you have to type something in Editor to cause the information about them loaded. For example if you created temporary table named #tmp then just type #tmp. and after that #tmp table will start to show up in Intellisense list window.

If you drop and recreate temporary table with different definition you have to refresh objects in Object View in order to reset Intellisense information for temporary tables.

Intellisense Options Description

Enable Intellisense | Enables or completely disables following options
Include System Tables | Display System Tables in Intellisense list
Include System Procedures | Display System Procedures in Intellisense list
Include Schemas/Databases | Display objects from other Schemas (Oracle, DB2) or other Databases (Sybase, MS)
Enable Auto Complete For: | Enables or disable following options
Keywords | Displays and enables autocomplete for Keywords
User Objects | Displays and enables autocomplete for User Objects
System Objects | Displays and enables autocomplete for System objects
Capitalize Keywords | Automatically capitalizes Keywords after you type space or separator character
Capitalize Procedures/Functions | Automatically capitalizes Procedures/Functions


SQL Templates

Using SQL Templates

Templates are files containing SQL scripts that help you use predefined code templates. Template files should be copied to a directory defined in Options->General->Templates. Files should be copied into one of the subdirectories of path specified in Options. Template files are ordinary text files containing SQL code. The template files can use formal parameters to help you customize the code. Template parameter definitions use following format:

<parameter_name, data_type, value>

where

  • parameter_name is the name of the parameter in the script.
  • data_type is the data type of the parameter (optional).
  • value is the value that is to replace every occurrence of the parameter in the script (optional).

Example:

CREATE PROCEDURE <procedure_name>
AS
BEGIN
END <procedure_name>;

Use the Replace Template Parameters dialog box to insert values into the script.

Note You can use the Replace Template Parameters dialog box to specify values any time a parameter definition is used in code. For example, when you script execute function from Object View, the function written to the current Script window will contains parameter definitions for any arguments in the function. You can, therefore, use the Replace Template Parameters dialog box to specify argument values. Also if you have text selected in Editor and invoke Replace template Parameters dialog then only selection will be checked for any template parameters

It is possible to specify cursor position in template. Put symbol "^" anywhere in the template text.

To use a template

  1. Open a Script window.
  2. If template manager window is not visible press Manage SQL Templates button on the toolbar.
  3. Navigate to desired template and select Insert Template menu item or double click left mouse button.
  4. When the template is displayed in the Script window, select Replace Template Parameters button on the toolbar.
  5. In the Replace Template Parameters dialog box, specify values for the parameters.
  6. To insert the specified values into the script in the Editor, click Replace.


Speed Typing

Speed typing configuration is accessible through menu Tools->Configure Speed Typing. Speed type definitions saved in a file whose name and location specified in Options general tab.

Speed typing allows to define strings which automatically expanded when typed. Speed typing is integrated in Intellisense and Auto complete. Speed typing also supports substitution parameters.

Examples:

1. Simple replacement. If Shortcut column contains sla and column Substitution Value contains SELECT * FROM then when you type sla in Script Editor and press space it will be replaced by SELECT * FROM

2. Use Speed typing to add Auto Complete strings. Simply enter desired string into Shortcut column and leave Substitution column blank

3. Using formal parameters:

If Shortcut column contains
sla (var_date, var_string)
and Substitution column contains
SELECT * FROM TABLE_NAME where date_col = '$(var_date)' and string_col = '$(var_string)'
then when in Script Editor you type:
sla (01/01/07, string_value)
it will be expanded into:
SELECT * FROM TABLE_NAME where date_col = '01/01/07' and string_col = 'string_value'

To specify cursor position in Editor after expansion put symbol '^' anywhere in substitution column text


Using Visual Diff

Visual Diff allows to compare files or results from queries, procedures or any other valid SQL statement which can be executed on different servers. To get meaningful results when comparing data You have to consider couple of things. Results should have identical number of columns, do not include volatile columns like timestamp and columns should be sorted in a same order if possible.

Visual Diff offer Quick Diff option. To use this option just do one of the following: select text in Editor or Result grid and drag / drop it to "Quick Diff" toolbar button on the main menu.

After you do it twice Visual Diff screen will open automatically displaying difference. Also right click popup menu in Editor and Result grid has an option to execute "Quick Diff"


Export / Import

Export / Import table data

Export to File

Select Export To->File menu item from table popup menu. Saved file can be later opened as script file and executed directly.

Import from File

You can import previously exported data by selecting Import From->File menu item from table popup menu. If table name in the file different from selected table it will be automatically replaced. Also file can be opened as ordinary file in Script Editor.

Export to Excel

Select Export To->Excel menu item from table popup menu to copy all table data to Excel

Import from Excel

You can import table data from Excel by first selecting range in Excel which contains table data with table column names in the first row. Order of columns is not important. Some column can be omitted too. To import data from Excel select table into which you want to import data. Right click and select Import From menu item. Select menu item with Excel session in which you previously selected data. Data from Excel will appear in a new Script Editor window as a series of INSERT statements. Now you can edit or execute script to insert data into the table.


Generate Scripts

Generate Scripts Help

This dialog allows to generate DDL scripts for the current Schema / Database.


Using Server Explorer

SqlDbx organizes information about servers in Server Explorer window. The Server Explorer provides fast and efficient way to access database objects. The Server Explorer contains multiple panels for each Server type with a tree control for each type. The tree organizes database objects as tree branches. By expanding or collapsing tree nodes you can easy browse and explore database objects. The Server Explorer includes two panes. Left pane displays database objects of currently selected Server and right pane shows summary for them.


Options

Options Dialog is accessible from toolbar or Main Menu->Tools.

General Options

Editor Options

Colors

Results Options

Scripting Options

Import / Export

Servers


Command Line Options

Usage: SqlDbx [-t] [-s] [-d] [-u] [-p] [-n] [-l] [[-q script file [-r]] [-w workspace file]

Arguments

-t server_type | Can be one of the following: microsoft, sybase, oracle, ibm, mysql, odbc
-s server_name | Server to which to connect
-d database_name | Database / Schema name
-u user | User name. If -U and -P not supplied try to login using integrated security
-p password | User password
-n | Start new instance of SqlDbx. If -n not specified then pass arguments to the instance started with command line arguments before. If none found then start new instance.
-l | Write debug log to SqlDbx.exe.log
-q script file | open specified script file
-r | if -q option specified then run loaded script
-w workspace file | load previously saved session state
-c | Clear registration information

Command line flags are not case sensitive and space after them is optional
*Command line options are supported only in SqlDbx Professional Edition


Quick Tips

Tips

Quick tips

01 | Intellisense works better and in more cases when table names use aliases For example:<br> select *from table_name1 T1, table_name1 T2 where T1.column_name = T2.column_name ...
02 | You can enable automatic save / restore of SqlDbx session state by checking Enable Session State check box on General tab in Options
03 | Speed typing allows to create aliases for often used SQL blocks. For examples you can add string "sla" as alias for "select * from". MainMenu->Tools->Speed Typing
04 | Generate SELECT/UPDATE/INSERT/DELETE allows quickly to script SQL DML statements.
05 | If you want to quickly access object properties just click on object it in Editor and press Alt-F1
06 | You can directly edit table data in Result Grid for tables with unique constraints
07 | Templates allow to organize snippets of code.
08 | Results Grid supports sorting and moving columns. Also it supports multiple selections. Hold Ctrl key while selecting multiple areas
09 | Quickly select SQL block by placing cursor on first character and then press Ctrl+B
10 | Quickly export data from table. Execute select * from <table_name>, then select everything in Grid Results by clicking on a top left corner and then select Generate->Insert from right click menu
11 | Filter data in Results Grid by selecting Filter menu item from right click popup menu
12 | Replace Template parameters works not only for templates but with any text enclosed in angle brackets "<...>"
13 | You can directly execute procedures and functions from Object View
14 | You can execute procedures from Editor by righ clicking on procedure name
15 | Results of any query operation will be put in a new Result Tab if you hold Shift key while selecting query action


Editing Scripts

Script Editor supports most common editing functions. For list of keyboard shortcuts see Editor shortcuts.

In addition Editor supports Column or Block mode. Block mode entered by pressing Alt + C key or Alt + left mouse button.

Also Editor supports multi line cursor mode. To enter this mode hold Alt + C key or Alt + left mouse button and then move up or down. When you see thin red vertical line it means you are in multi line cursor mode. In this mode everything you type will be replicated on all lines.

Script Editor supports different ways to paste data from clipboard. Data from Results Grid can be pasted in two different ways. Ctrl + V will paste it in a format suitable for use in SQL statements. Ctrl + Shift + V will paste it in tab separated form. Some other additional paste options provided on right click popup menu or on Main Menu->Edit under Paste Special.


Executing Scripts

To execute whole script in Script Editor make sure that there's no selection and then use either toolbar button or Editor popup menu item "Execute" or one of the shortcut keys. By default "Execute" assigned to F5 and Ctrl+E . If you want to execute part of the script simple select it and then use the same method as above. To execute text on a current line press Ctrl+Enter.

If you want to see results in a new Result Grid hold Shift key down while executing query


Script Variables

Script Variables provide you with the flexibility of using a single script in multiple scenarios. For example if you need to run single script against multiple databases, instead of modifying the script for each database, you can use a scripting variable for the database name. Your define Script Variable by using following syntax:

DEFINE var_name [=] [var_value] | [CHAR | VARCHAR | NUMBER | INT | INTEGER | NUMERIC | DECIMAl]

where:

  • = - optional assignment operator
  • var_name - variable name
  • var_value- optional variable value
  • CHAR, VARCHAR, ... - optional variable type

To reference script variable you use following syntax: for all databases except Oracle: $(var_name). In case of Oracle: &var_name

Script variables can appear anywhere in text

Example of using Script Variables:

Simple substitution

DEFINE var_date = 01/01/07
DEFINE var_string 'String_Value'
SELECT * FROM table_name where date_field = '$(var_date)' and string_field = $(var_string)

The above select statement will be converted to:

SELECT * FROM table_name where date_field = '01/01/07' and string_field = 'String_Value'

Parameterized Query with substitution parameters

DEFINE var_date
DEFINE var_string

Parameterized Query with type safe substitution parameters

DEFINE var_date DATE
DEFINE var_string VARCHAR
SELECT * FROM table_name where date_field = '$(var_date)' and string_field = $(var_string)

If you try to execute script above then window will popup asking to supply values for defined variables which do not have values assigned to them. This will be happen every time you execute above script because DEFINE statement will reset variable value to nothing. If Script variable contains type declaration then SqlDbx will try to convert specified values to corresponding type. If conversion fails then query will not be executed. For example if you specify string_value for var_string then it will be enclosed in single braces automatically or if type declared as DATE and your database is Oracle then it will be replaced by function TO_DATE(var_date, 'YYYY-MM-DD'). If no type specified or variable value provided then no conversion will apply.

Script variables maintain values until they are changed by DEFINE command.

Script Variables naming rules

  • Variable names must not contain white space characters
  • Variable names must not have the same form as a variable expression, like $(var)
  • Scripting variable names are not case-insensitive

Predefined Variables

SqlDbx defines following glogbal variables:

  • $(TODAY) - returns today's date
  • $(NOW) - returns today's date and time
  • $(CURRENT_SCHEMA) - returns current schema
  • $(NEW_UUID) - returns new UUID


Script Commands

Script Commands provide ability to access some of the functionality which is available through different menus

cmd command_name [=] command_options

where:

  • cmd required and indicates the start of a command
  • command_name one of the supported commands
  • command_options - command options if any

Supported Script Commands:

cmd results = grid | text               Set results output destination
cmd results_only = Y | N                Include results only
cmd result_new = [name]                 Add new result tab and make it current
cmd result_current = name               Set current result tab
cmd result_name = name                  Set result tab name
cmd export = excel                      Export to Excel
cmd export = file filename              Export to file
cmd print_message ['] message text [']  Add message to Messages tab

Remarks

Script command can be the first statement in SQL batch or the only statement in the batch.

cmd result_new = customers -- Add a tab with the name customers
select * from customer
or
cmd result_new = customers -- Add a tab with the name customers
go -- database specific batch separator
select * from customer

Export script command applies to the next SQL statement. For example to export result of the query to excel

cmd excel export
select * from customer


Object View

Object View organizes different database objects in different bars on a left side. To activate bar simply click on it. Bar title displays type of the object and number of objects of this type in a current Schema / Database. Filter can be used to limit number of objects displayed in list.

Working with Object View


Working with Object View

Using Object View

Object View displays different kind of database objects grouped by type. Each bar displays objects of the same type. To find object within the view press Ctrl+F and then start typing. Based on a type of object right click will popup menu with actions you can perform. You can drag and drop objects from Object View to Editor window. To set filter for displayed objects click the filter button on the right edge of pane title bar. Objects from the list can be dragged and dropped on to Quik Diff button.

Object View popup menu description

SELECT * | For tables and views selects all data
Script Create | Scripts object CREATE statement in current or new editor window
Script Select | For tables and views generates SELECT statement
Script Update | For tables and views generates UPDATE statement
Script Insert | For tables and views generates INSERT statement
Script Execute | For procedures and functions generates execute statement with template parameters Template Parameters
Execute | Executes procedure or function
Script Permissions | Generates object permissions
Drop | Drop selected object
Edit Table Data | Allows to directly edit table data in Results Grid Table has to have PRIMARY KEY or IDENTITY or UNIQUE KEY
Export Data To | See Export / Import
Import Data From | See Export / Import
Add to Favorites | Adds object to Favorites Bar in Object View
Locate in Script | Locate CREATE statement for selected object in the active Editor window
Object Search | Wildcard search for object in Object View
Scripting Options | Displays Scripting Options page
Properties | Displays all properties for selected object

Object View Keyboard Shortcuts

Shift + E | Favorites
Shift + O | System Objects
Shift + T | Tables
Shift + V | Views
Shift + S | Sequences
Shift + P | Procedures
Shift + F | Functions
Shift + R | Triggers
Shift + K | Packages
Shift + N | Synonyms


Execute Procedures / Functions

To execute procedure or function select "Execute..." menu item from right click popup menu in Object View or right click on a procedure name in script tab and select first menu item.

If procedure requires arguments than you will be presented with dialog box to enter them.

To specify NULL value leave Value column blank.

To specify empty string type '' (two single quotes) in Value column.

Red foreground color in Type column indicated required field.

You can use "Script EXECUTE" menu option if you wish to execute procedure from script tab.

To specify parameters in this case select generated code and use "Replace Template Parameters" menu option to specify initial values


Working with Results Grid

Results Grid has two tabs. First tab displays results of a query either in Grid or formatted text form. Second tab displays error and informational messages.

Results Grid can be used to perform different actions on a data returned from a query.

Results Grid has a status bar which displays following information:

  • Completion status and text of a last executed query
  • Current schema or database
  • Stored procedure result. Works for Sybase only
  • Query time
  • Number of batches executed
  • Number of rows affected


Empty

Working with Results Grid

Result Grid has two modes: Results Display mode and Table Data Edit mode.

Results Display Mode

In Display query mode you can execute actions described below in a table. Generate SELECT/INSERT/DELETE/UPDATE for dates and string uses settings from Import / Export

Table Edit Mode

Table Data edit is entered when you select "Edit Table Data" from table popup menu in Object View. In this mode you can directly edit data in underlying table. When entering string values you do not need to enclose them in single quotes. To assign NULL value to a column leave content of cell empty. To enter empty string type two single quotes. Dates can be entered in any format which can be converted to date. If conversion to date fails nothing will be changed. Change in underlying table happens when you leave cell. At this point explicit COMMIT executed.

Grid popup menu actions

Results in New Window | Display current results in a new window
Generate |
SELECT | Generates select statements for current selection
INSERT | Generates insert statement for current selection
UPDATE | Generates UPDATE statement for current selection. If table has unique constraint then will use it, otherwise will use selected columns in update clause
DELETE | Generates DELETE statement for current selection. If table has unique constraint then will use it, otherwise will use selected columns in delete clause
WHERE IN () | Generates WHERE IN statement for current selection
ORDER BY () | Generates ORDER BY statement for current selection
GROUP BY () | Generates GROUP BY statement for current selection
CREATE TABLE () | Generates CREATE TABLE statement based on current selection
Column Format | Allows to quickly change column display format
Filter | Allows to quickly filter rows based on a value in current cell
Get Child / Parent Rows | Allows to quickly retrieve Child / Parent rows rows based on a FOREIGN KEY constraint defined for selected rows
Find in Results | Find in Results
Copy | Copy selection to Clipboard. Data copied in two different formats
Copy With Column Name(s) | Same as above only includes column names
Copy Column Name(s) | Copy only column names to Clipboard
Export to Excel | Export selection to Excel
Export to File | Export selection to File
Results | Switch column and rows
Add Result Tab | Add new result tab if option Multiple Results Tabs enabled
Delete Result Tab | Delete current result tab
In Grid | Display query results in Grid
In Text | Display query results in Text
Transpose | Switch column and rows
Freeze Columns | Freeze columns to the left of current cell
Show Column Types | Display column type below header in Grid
Show Column Totals | Show total for numeric columns in current selection

Notes

Generate feature by default copies generated statement to a current cursor position in Script Editor.

If you hold Ctrl key down when using generate then statement will be copied at the end of current script


General Options

Settings on this page control

General Options Description

Directories |
Script Files | Default directory where to store script files
Results Files | Default export directory
Backup Files | Default backup directory
File Browser | Default root directory for File Browser and SQL Templates
Speed Typing | Directory and name of Speed Typing file
Config Files | Default directory where Session State and favorite objects files stored
Settings |
Backup Modified Files | Create backup files
Show System Objects | Enables System Objects bar in Object View
Alternate Window Layout | Switches between two predefined windows layouts
Enable Session State | Enables automatic save of SqlDbx state on exit
Open Session connections | Connects to Database during loading of Session State
File Extensions | Specifies extensions and filters for Open and Save dialogs
File Associations | List of extensions in following format: *.sql;*.qry
Language | Set user interface language


Editor Options

This page contains settings for Script Editor

Editor Options Description

Selection Margin | Display selection margin on a left side
Show Line Numbers | If selection margin enables displays line numbers
Outline Margin | Enable outline margins for hide / show rows
Auto Indent | Auto indent next line when "Enter" key pressed
Allow Virtual Spaces | Allow cursor to go beyond line end
Use I - beam Cursor | Use I-beam or underscore cursor
Fonts |
Screen Font | Allows to select Editor font
Printer Font | Allows to select Printer font
Tabs | Controls number of tabs
Tab Size | Controls number of tabs
Keep Tabs / Insert Spaces | Inserts spaces or keeps tabs when "Tab" key pressed
End of Line Style | Controls how end of line set in file when saved
Intellisense | See Intellisense


Color Options

This page allows to assign colors to different types of database objects. Also it allows to assign alternative background and text color for specific connections. Usually it used to differentiate connections to production and development servers. In order to use alternative colors you have to check "Production" on a Login dialog.


Results Options

Results options

Results Grid Options

Data Format |
Date Format | Allows to select Grid date format
Time Format | Allows to select Grid time format
Max Decimals | Maximum number of decimals to display
Right Align Dates, Timestamps, Numbers | Right align dates in Grid
Do Not Show Time if Not Present | If date does not have a time portion then do not display time
Thousands Separator | Use thousands separator to format numbers
Always Use '.' as Decimal Separator | Force dot as decimal separator
Trim Trailing Zeroes | Trim trailing zeroes
Do Not Use Date Format For Timestamps | Do not use date format to format TIMESTAMP columns
Grid Font | Allows to select Grid font
Results Location | Allows to select where query results displayed
Grid Colors | Allows to assign background color to odd and even rows
Set Focus to Grid After Execute | Set focus to grid after query completes
Multiple Result Tabs | Enable option to add Result Tabs. Applies to new connections
Show Column Types | Display column types under the header in Grid
Rows Limit On | Maximum number or rows to retrieve


Scripting Options

Scripting / Log Options

These setting are used when Objects scripted from Object View

Scripting Options Description

Script DROP for tables, views | Script DROP statements for tables, views
Script DROP for procedures | Script DROP statements for procedures, functions
Use ALTER / REPLACE | Use ALTER / REPLACE for procs, functions if available
Script Object Level Permissions | Script object level permissions
Script Object Owner/Schema | Script object Owner / Schema
Script Object Physical Properties | Script object physical properties
Script Collation Clause | Script table collation clause
Script GRANT TO PUBLIC | Script GRANT TO PUBLIC
Script Object in New Window | Script object in new Script Tab

Log Options Description

Enable SQL Log | Enable SQL logging
Log File per Server | One log file for each server
Monthly / Daily (Checked) | Start new log file every month or every day
Include Results | Include query results in a log file
Log Directory | Directory where to create log files


Import / Export Options

These options control settings used when generating export files

Export Options Description

Date Format | Allows to select date format
Row Delimiter | Row delimiter
Field Delimiter | Field delimiter
Literal Quote | Character to use for string escaping
Date Quote | Character to use for date escaping
Include Column Names | Include column names in export file


Servers Options

Server Options pages allow to specify settings for different servers.

Oracle Help

Sybase Help

Microsoft Sql Server Help

IBM DB2 Help

ODBC Help


Oracle Help

Supported versions:

8.1.5
8i
9i
10g

Oracle How To
Oracle Bind Variables
SQL*Plus support


Oracle How To

Connectivity problems

SqlDbx relies on Oracle client being installed on client computer. SqlDbx dynamically tries to load oci.dll. If this dll not found then you will encounter error message about client software not being properly installed. Check that oci.dll is available and PATH environment variable includes path to it.

Working with multiple Oracle Homes

When connecting to database you can select which Oracle Home to use when connecting to Server. After first connection established all subsequent connections will use the same Oracle home regardless of what selected in Home combo box in Login dialog. Also you can create your own Oracle Homes in SqlDbx. It can be useful for example when Oracle Instant client used. User defined Oracle Homes can be added in Options dialog on Oracle page. String should consist of two strings separated by comma. First one specifies name for Home and second specifies path to a directory where OCI.DLL located. includes path to it.

Direct Oracle Connection

To connect to Oracle server directly specify Server on Login screen as: HOST:PORT,SERVICE_NAME


Oracle Bind Variables

SqlDbx supports bind variables which similar to SQL*PLUS Bind Variables.

Creating and using Bind Variables

You create bind variables with the VARIABLE command. For example

VARIABLE varName1 VARCHAR2
VARIABLE varName2 NUMBER
VARIABLE varName3 CLOB
VARIABLE varName4 REFCURSOR
You reference bind variables in scripts by typing a colon (:) followed immediately by the name of the variable. For example
VARIABLE ret_val NUMBER;
BEGIN
:ret_val := 2;
END;
After executing this block you will see output in grid automatically

Using REFCURSOR Bind Variables
REFCURSOR bind variables allow to fetch and display results of a SELECT statement contained in PL/SQL block or they can be used to reference PL/SQL cursor variables in stored procedures and functions. Also REFCURSOR bind variable can be returned from a stored procedure.
VARIABLE employee_info REFCURSOR
BEGIN
OPEN :employee_info FOR SELECT EMPNO, SAL FROM SCOTT.EMP;
END;
After executing this block results automatically will be displayed in grid.

Using REFCURSOR Variables in stored procedures
CREATE PROCEDURE EmpReport (emp_ref IN OUT REF CURSOR)
AS
BEGIN
OPEN emp_ref FOR SELECT EMPNO, SAL FROM SCOTT.EMP;
END;

VARIABLE rc REFCURSOR;
BEGIN
EmpReport (:rc);
END;


SQL* Plus support

SqlDbx currently does not support SQL*Plus commands. The only supported commands is VARIABLE and DEFINE, all others ignored. You still can execute SQL*Plus scripts but it is possible you will get errors in certain situations. For example if scripts prompts for variable value using &&name method. Support for some SQL*Plus commands is planned for future release of SqlDbx.

You can use "/" as a command separator. Typing / will not run the content of the buffer but will serve as batch separator when you execute part or the whole script.

Supported SQL*Plus functionality:

SqlDbx supports SQ*Plus substitution variables with some minor differences. For details of how to use substitution variables click here Script Variables


SQL Server Help

Supported versions

6.5
7.0
2000
2005
2008
2012
Azure

SQL Server How To


SQL Server How To

Integrated security

In case of integrated security when you connect to SQL Server do not specify user name and password


Sybase Help

Supported versions

Sybase ASE 10.x - 15.x
Sybase IQ 12.5 - 15.x
Sybase Anywhere 9.x - 12.x

Sybase How To


Sybase How To

Sybase ASE

SqlDbx relies on Sybase Open Client installed on local computer. If while trying to connect to Sybase Server you encounter message stating that database handler cannot be created for this type of Server it usually means that Sybase Open Client dll ctlib.dll or libsybct.dll cannot be found. SqlDbx always tries to first load libsybct.dll which is distributed with Open Client version 15 and if it fails then it tries to load ctlib.dll.

Sybase IQ, Sybase Anywhere

Two different connections types supported for Sybase IQ and Sybase Anywhere: Open client and Sybase IQ ODBC driver.

Both methods offer same features.


IBM DB2 Help

Supported versions

DB2 UDB 7.0 - 7.5 Limited support
DB2 UDB 8.x - 9.x
DB2 z/OS 7.x - 9.x
DB2 iSeries 5.x - 7.x
DB2 How To

Connecting to uncataloged DB2 databases

By default SqlDbx treats value in Server combo box as cataloged database alias.

To connect to uncataloged DB2 databases please follow steps below.

1. Specify Server as HOSTNAME:PORT or HOSTNAME

2. In Options add the name of the database: DATABASE=dbname

3. Specify port if it was not specified in Server combo box.

Example:

Server: db2server

Options: PORT=5023;DATABASE=dbname

* Make sure that option values separated by semicolon ";"


DB2 How To

DB2 Batch separator

DB2 does not have fixed batch delimiter. IBM DB2 command line processor (CLP) and DB2BATCH utility have a command to set a delimiter. For example --# SET DELIMETER !. SqlDbx does recognizes CLP SET delimiter command but even without it present still can process most of the batches because it parses SQL statements and able to recognize end of statement, compound SQL or procedure. Following SQL statement will be successfully recognized by SqlDbx without need to explicitly set delimiter.

CREATE PROCEDURE (FUNCTION, TRIGGER) name

...

BEGIN

--Compound SQL statements

END

Default delimiter is ";". If SQL script sets delimiter to something else it will be reset to ";" after all statements in the batch processed.

Executing Stored Procedures

Below is the example of how to call stored procedure on DB2 z/OS which has input and output parameters. The below code fragment was generated by selecting "Script Execute..." menu item. Leading underscore indicates that output parameter value should not be part of returned results.

VARIABLE COMMANDS '-DISPLAY THREAD(*) TYPE(*)' VARCHAR
VARIABLE LEN_COMMANDS 200 INTEGER
VARIABLE PARSE_TYPE 'THD' VARCHAR
VARIABLE _COMMANDS_EX INTEGER OUT
VARIABLE _IFCA_RET INTEGER OUT
VARIABLE _IFCA_RES INTEGER OUT
VARIABLE _XS_BYTES INTEGER OUT
VARIABLE ERROR_MSG VARCHAR OUT

CALL SYSPROC.DSNACCMD (?_COMMANDS, ?_LEN_COMMANDS, ?_PARSE_TYPE, ?COMMANDS_EX, ?IFCA_RET, ?IFCA_RES, ?XS_BYTES, ?ERROR_MSG);

Parameters also can be specified inline. Below is modified version of the code above.

VARIABLE COMMANDS '-DISPLAY THREAD(*) TYPE(*)' VARCHAR
VARIABLE PARSE_TYPE 'THD' VARCHAR

CALLSYSPROC.DSNACCMD (?COMMANDS, ?LEN_COMMANDS$int$in$100, ?PARSE_TYPE, ?_COMMANDS_EX$int$out, ?_IFCA_RET$int$out, ?_IFCA_RES$int$out, ?_XS_BYTES$int$out, ?_ERROR_MSG$int$out);

Parameter format: NAME $ TYPE $ [IN | INOUT | OUT] $ VALUE.

In case of DB2 LUW or DB2 iSeries there's no need to have VARIABLE statement or specify types for IN parameters.

CALLSYSPROC.DSNACCMD ('-DISPLAY THREAD(*) TYPE(*)', 100, 'THD', ?_COMMANDS_EX$int$out, ?_IFCA_RET$int$out, ?_IFCA_RES$int$out, ?_XS_BYTES$int$out, ?_ERROR_MSG$int$out);


MySQL Help

Supported versions

MySQL 5.x

MySQL How To

Before you can connect to MySQL server you will need to download MySQL ODBC driver. You can install it but it is optional. The only requirement is that MySQL ODBC driver (myodbc5.dll) is located somewhere where SqlDbx can find it, for example in a same directory where SqlDbx.exe. Driver can be download from:

MySQL ODBC Connector

Download ZIP version with no install. Open it and extract file myodbc5.dll to SqlDbx or \Drivers directory. This will allow you to connect to MySQL by selecting it from "DBMS Type" combo box on the login screen There's two ways to specify port number if it is different from default (3306).

1. Specify Server name as SERVER:PORT

2. Add line PORT=port_number to Options edit box.


PostgreSQL Help

Supported versions

PostgreSQL 8.2.x - 9.x.x

PostgreSQL How To

Before you can connect to PostgreSQL server you will need to download PostgreSQL ODBC driver. You can install it but it is optional. The only requirement is that PostgreSQL ODBC driver is located somewhere where SqlDbx can find it, for example in a same directory where SqlDbx.exe. Driver can be download from:

PostgreSQL ODBC Driver

Download ZIP version with no install. Open it and extract all *.dll files to SqlDbx or \Drivers directory. This will allow you to connect to PostgreSQL by selecting it from "DBMS Type" combo box on the login screen There's two ways to specify port number if it is different from default (5432).

1. Specify Server name as SERVER:PORT

2. Add line PORT=port_number to Options edit box.


Informix Help

Supported versions

Informix 9.x - 11.x

Informix How To

Before you can connect to PostgreSQL server you will need to download Informix ODBC driver. You can install it but it is optional. The only requirement is that Informix ODBC driver is located somewhere where SqlDbx can find it, for example in a same directory where SqlDbx.exe.


Kdb+ Help

Supported versions

Kdb+ 2.x

Kdb+ How To

Before you can connect to Kdb+ server it is necessary to download and install Kdb+ ODBC driver from: Kdb+ ODBC driver download

After you install ODBC driver there's two different way to configure access.

1. You can created DSN using using ODBC Manager (Access it from SqlDbx main menu: Tools->ODBC Administrator) and then use "ODBC" DBMS Type to connect to it

2. In Login dialog select DBMS Type "Kdb+" and in Server combo box enter server and port for KDb+ server, for example: SERVER1:5001. You can omit port number in Server combo box and specify it in Options edit box using following format: PORT=5001

It is also possible to configure SqlDbx to use Kdb+ ODBC driver directly without installing it. In this instance you need to copy qodbc.dll file to the same directory where SqlDbx.exe located or to a subdirectory named "Drivers" and then use the second method described above to connect.


ODBC Help

SqlDbx requires ODBC 3.0 or later in order to operate correctly. Functionality is limited when you connect through ODBC even to the Servers with native support. SqlDbx does not try to figure out what kind of Server it connected to and uses only features provided by ODBC. SqlDbx does not alter any ODBC settings. Connecting through ODBC is useful when you try to solve issues with your applications which use ODBC connectivity.

It has to be noted that a lot of features like accurate table scripting,stored procedure definitions are not available with ODBC

ODBC How To


ODBC How To

It is possible to execute set of predefined commands when using ODBC Connectivity. These commands directly map to ODBC API functions. See ODBC documentation for parameter description.

Available ODBC API commands:

=SQLTables (Catalog, Schema, ObjectType)

=SQLColumns (Catalog, Schema, Table)

=SQLSpecialColumns (Catalog, Schema, Table)

=SQLPrimaryKeys (Catalog, Schema, Table)

=SQLForeignKeys (Catalog, Schema, Table)

=SQLProcedures (Catalog, Schema, ObjectType)

=SQLProceduresColumns (Catalog, Schema, Procedure)


Change log

Release History

Version 3.55 (08 Apr, 2012)

New and changed features

  • Support for SQL Server 2012 and Azure
  • Improved permissions scripting (Sybase, SQL Server, DB2, Oracle)
  • Added option to executes SQL statements on connect

Fixes

  • Wrong driver loaded for ODBC connections
  • SqlDbx becomes unresponsive when searching in Object View
  • Generate INSERT does not work on filtered results
  • Non system tables owned by user informix not displayed (PostgreSQL)
  • "Unknown exception" error when exporting to Excel
  • Table properties not scripted for Sybase ASE 15.5

Version 3.54(04 March, 2012)

New and changed features

  • Support for Sybase 15.7
  • Improved scripting (Sybase, SQL Server, DB2, Oracle)
  • New global variable (NEW_UUID)
  • Export as HTML
  • Copy as HTML, XML, CSV
  • Close Other Tabs option (Scripts, Results)
  • French and Russian translations

Fixes

  • Intermittent crash when selecting very long text data
  • No output for MESSAGE statement (Sybase IQ, iAnywhere)
  • Script truncated for very large tables
  • Last exported row to Excel has wrong formatting
  • Script variables do not use defined color
  • DBMS metadata scripting missing indexes and constraints (Oracle)
  • IDENTITY column not scripted (Sybase ASE)
  • Long identifiers option not available for Sybase version < 15.x

Version 3.53(12 Feb, 12)

New and changed features

  • Improved error reporting (Oracle)
  • New Shortcut keys ALT+1, ALT+F3
  • Multi sheet export to Excel
  • Performance improvements (Excel export. Data compare)

Fixes

  • Database combo box empty (Sybase 11)
  • Error connecting using ODBC
  • Horizontal scrolling using mouse
  • Main menu not displayed correctly in SqlDbx x64
  • Arithmetic overflow in Databases admin query (Sybase)
  • Intellisense drop down shows columns from unrelated table

Version 3.52(04 Dec, 11)

New and changed features

  • Support for DB2 iSeries version 7.x
  • Direct Oracle connection
  • Informix synonyms
  • Filter option to hide rows in Result Grid
  • New and updated Admin queries (Sybase, Sql Server, DB2)
  • Copy as text in Result Grid option
  • Display count in Search Database dialog

Fixes

  • XML type columns not displayed (Oracle)
  • Closing Results window exits SqlDbx
  • Unable to move Grid columns
  • Intellisense fix for table aliases
  • Single quote not escaped in Generate SELECT / DELETE / UPDATE
  • String quoting in SqlDbx Unicode
  • Do not display IN parameters when executing stored procedures (DB2)
  • TRUNCATE TABLE menu does not work (DB2)
  • Missing stored procedure properties (DB2 z/OS)
  • Do not display auxiliary tables (DB2)
  • Execute and Script Execute stored procedures fails (DB2 z/OS)
  • Incorrect scripting of DROP for materialized views (Oracle)
  • Incorrect scripting of GRANT for functions returning table

Version 3.51(25 Sep, 11)

New and changed features

  • Informix support (Pro Edition)
  • Improved support for PostgreSQL
  • New script commands (Pro Edition)
  • Simplified scripting for stored procedures execution (DB2, Oracle)
  • Import table data from CSV file (Pro Edition)
  • Option to disable / enable whole script execution
  • Option to display results in a new grid
  • Extended password security support (Sybase ASE)

Fixes

  • Truncation of long character columns (DB2, SQL Server, ODBC)
  • Unicode version uses too much memory
  • Intellisense fixes
  • Incorrect lower/upper keyword case in some instances
  • Unhandled exception in editor when moving line up / down
  • Incorrect Intellisense parameters for stored procedures (MySql)
  • References loaded for wrong schema
  • Export to CSV with no delimiters right trims VARCHAR columns

Version 3.50(24 Jul, 11)

New and changed features

  • SqlDbx portable version
  • Schema compare (Pro Edition)
  • PostgreSQL support
  • Improved MySQL support
  • Scripting improvements (DB2)
  • Connection to uncataloged databases (DB2)
  • Better connection error reporting

Fixes

  • Fixed issue with Oracle parser
  • Disable ODBC escape sequences
  • Disable not implemented menus and toolbar icons
  • Results in Grid / Text option not handled correctly
  • Blank DATE or TIME columns
  • Incorrect scale displayed for MONEY columns (Sybase ASE)
  • "Rerun Query" executes wrong query

Version 3.49(03 Apr, 11)

New and changed features

  • Svn integration (requires TortoiseSVN)
  • Quick Diff for Objects
  • Improved scripting (DB2)
  • Support for IN and INOUT stored procedure parameters (DB2)
  • Additional functions in Result Grid: AVG, COUNT
  • Option to set color of active line
  • Move current line up / down (CTRL+SHIFT+UP / CTRL+SHIFT+DOWN)

Fixes

  • Intellisense displays incorrect table columns for tables with the same name in different schemas (SQL Server)
  • Compilation errors not displayed (Oracle)
  • Handle invalid dates (Oracle)
  • "Scripting Options" dialog displayed multiple times
  • Multiple fixes for x64 version
  • Procedure source not shown correctly (Sybase IQ, iAnywhere)
  • Missing precision for DATETIME2 and TIME columns (SQL Server)
  • Exception when exiting with results windows open
  • Fixed incorrect display of UNIVARCHAR and UNICHAR columns (Sybase ASE)
  • Exception when pasting text from other applications
  • Incorrect system views used for some catalog queries (Oracle)

Version 3.48(27 Jan, 11)

New and changed features

  • Added Production and Non Production mode
  • Option to set restrictions for production mode (Options->Servers)
  • Added predefined variables $(TODAY), $(NOW), $(CURRENT_SCHEMA)
  • Script to Clipboard
  • Added option to truncate tables
  • Significantly improved Workspace / Session management
  • Minor UI changes

Fixes

  • Object list empty for case sensitive server installations (Microsoft Sql Server)
  • Generated permission statements missing separator (IBM DB2)
  • Generated SELECT / UPDATE / DELETE missing second fractions for some Date types
  • Some UI elements not updated correctly when switching between connections
  • Diff view displays identical lines as changed
  • Line numbers missing in Messages Tab
  • CLR functions not displayed in function list (Microsoft SQL Server)
  • Line numbers missing in Messages Tab
  • Erroneous scripting of permissions for triggers
  • SqlDbx window not visible when performing Alt+TAB

Version 3.47 (17 Oct, 10)

New and changed features

  • Schema / Database filter
  • Script commands
  • Changed log options and log format
  • Added option to script USE (Sybase, MS SqlServer)
  • Editor option to untabify selection in Editor
  • Changed how new script tab names generated
  • Changed behavior of some shortcuts keys in Editor and Results Grid (HOME, END, PgUp, PgDown, Ctrl+D)
  • Some minor usability improvements

Fixes

  • Exception when loading session state from unavailable network share
  • Drop menu in Object View not working correctly when selecting multiple items
  • Unable to connect to Sybase ASE when certain database administration tasks running
  • Temp tables column not showing in Intellisense (Sybase, MS SqlServer)
  • Incorrect scripting of GRANT TO PUBLIC
  • Result Grid mode reset after each query
  • Editor is not responsive in certain situations

Version 3.46 (18 July, 10)

New and changed features

  • MySQL and Kdb+ support
  • Improved Intellisense
  • Added support for ALTER table statements
  • Scripting to new tab when SHIFT key is pressed
  • ODBC improvements (Indexes, primary / foreign keys)
  • Added ability to use ODBC drivers for some database systems without creating DSN entries
  • SQL Forms
  • Scripting to new tab when SHIFT key is pressed

Fixes

  • Long table constraints truncated (Sybase)
  • Incorrect number of affected rows by stored procedure (Sybase)
  • Inconsistent Editor behavior for some shortcut keys
  • Incorrect lower/upper keyword case in some instances
  • sp_procxmode not scripted for stored procedures (Sybase)
  • Search in Results not working for some locales
  • Couple small scripting errors
  • Exception when closing ODBC connections

Version 3.45 (09 May, 10)

New and changed features

  • Generate SELECT / INSERT / ... uses SQL formatter settings (SqlDbx Pro only)
  • Additional color options
  • Ability to "Mark" up to three different words
  • Export Results grid selection to CSV, XML
  • Additional date formats

Fixes

  • Table columns not sorted in Intellisense window
  • Table names missing owner (Sybase Anywhere / IQ)
  • Incorrect table scripting (IBM DB2 for z/OS)
  • Timeout connecting to DB2 on iSeries
  • x64 version access violation when pasting from clipboard
  • Spaces not handled correctly when using substitution variables

Version 3.44 (04 Apr, 10)

Fixes

  • Keyboard menu accelerators not working for languages other then English
  • Errors when performing operations on multiple selected objects in Object list
  • Unicode version does not connect to DB2 in Windows 7
  • Open multiple files sometimes does not open all files
  • No results when truncating text columns for Sybase
  • Incorrect behavior when selecting multiple objects in Object list
  • Incorrect scripting of constraint columns for Sql Server
  • Incorrect case for user types in Sybase and Sql Server
  • UNICODE files not loaded correctly

Version 3.43 (28 Feb, 10)

New and changed features

  • Support for multiple languages (Pro version only)
  • Updated system queries for DB2
  • Intellisense improvements
  • Enhanced Object list view
  • Info tips in Object list view
  • Two new scripting options
  • Floating windows layout saved / restored
  • Small changes and improvements

Fixes

  • Error connecting to Oracle 8.1.x
  • BEGIN / END blocks not matched correctly
  • Toolbar combo boxes not working on Windows 2000
  • Inconsistent menu items and shortcuts
  • Exception for ODBC connections
  • Reduced windows resources usage
  • Exception in Editor

Version 3.42 (11 Jan, 10)

New and changed features

  • SQL Log
  • Upper / Lower case scripting
  • Support for script / execute functions (Sybase Anywhere / IQ)
  • Enhanced scripting formatting
  • Improved handling of script variables
  • Keyboard shortcuts to switch focus between different windows (Ctrl+1, Ctrl+2, Ctrl+3)
  • Improved keyboard navigation
  • Multiple small improvements in Editor

Fixes

  • Incorrect cursor position after search
  • OUT parameters for SQL Server not scripted correctly
  • Crash during restoring saved session
  • Editor crashes when using bookmarks
  • Inconsistent keyboard shortcuts

Version 3.41 (06 Dec, 09)

New and changed features

  • Hide / Show lines in Editor
  • Template manager replaced by File browser
  • Initial support for Sybase IQ 15
  • Associate files with SqlDbx
  • Added date and time to SQL statement history
  • Added option to only generate update statement when editing table data
  • ANSI version can read UNICODE files
  • Small changes and improvements in different areas

Fixes

  • Intermittent x64 version crashes
  • Computed table columns were not scripted correctly for Sybase and SQL Server
  • Long passwords truncated
  • Oracle XMLType limited to 2K
  • Session state not restored correctly in some instances
  • File save dialog missing ANSI / UNICODE combo box on Windows 7
  • SqlDbx Unicode version not connecting to SQL Server on Windows 7

Version 3.40 (18 Oct, 09)

  • Native x64 version of SqlDbx
  • Added multi column Results grid sort (Ctrl + double click)
  • Added support for Oracle XMLType columns
  • Improved support for multiple Oracle Homes
  • Improved Table Export to file
  • Improved Insert New Row feature. Better handling of identity and timestamp columns
  • Fixed scripting of defaults and check constraints for Sybase and Microsoft SQL Server
  • Fixed painting issues on Windows 7
  • Small improvements and enhancements in couple different areas

Version 3.33 (13 Sep, 09)

  • Added ability to modify table data and generate UPDATE/INSERT for ODBC Connections
  • Improved support for Aliases / Synonyms for DB2 and Oracle
  • Improved Intellisense: display primary / foreign constraints for JOIN statement
  • Multiple improvements for DB2 scripting. Better support for DB2 iSeries
  • Displays execution time for each individual batch
  • Added data modify update statements to SQL History
  • Added option to toggle Editor column mode (ALT+C)
  • Added some missing menu items
  • Fixed Modify Table Data generating incorrect update statement
  • Fixed exception when generating UPDATE statement for Sybase
  • Fixed Cascade / Tile not working
  • Fixed Find All causes SqlDbx to hang
  • Fixed incorrect catalog /schema display for ODBC Connections
  • Fixed Intellisense missing some keywords and object names
  • Fixed SQL History not saved / restored correctly.
  • Small changes and improvements in different areas

Version 3.32 (17 Aug, 09)

  • Added ability to select multiple objects in Object View using SHIFT key.
  • Added ability to select multiple items in Intellisense popup window.
  • Added option to specify order of table columns in Intellisense popup window
  • Added option to enable number of returned rows by default
  • Added option to modify query results directly in Result Grid
  • Added ability to modify table data for tables with no unique constraints
  • Added new option to float and dock Object View, Edit and Result tabs
  • New Editor features. Go to Line (Ctrl+G) and Mark all occurrences of a word (Ctrl+M)
  • New Editor feature. Automatically highlight matching parenthesis
  • New Editor feature. Automatically highlight matching BEGIN/END IF/END IF, CASE/END, ... SQL blocks
  • Improved generate SELECT/INSERT/UPDATE
  • Added new option to generate SQL Plus compatible scripts for Oracle
  • Changed XML export format. Corrected date format
  • Fixed out of memory error when exporting table data to file
  • Fixed generation of execute script for Oracle package procedures
  • Fixed custom object filter not working
  • Fixed Shift key operation in Result Grid
  • Fixed exception when copying from Result Grid
  • Fixed exception when canceling Oracle queries
  • Fixed error when executing Oracle stored procedures with multiple output cursors
  • Fixed slow Intelliesense for Oracle and DB2
  • Fixed couple system catalog queries for DB2 z/OS

Version 3.31 (14 Jun, 09)

  • Custom object filters
  • Support for integrated BCP for Sql Server and Sybase
  • Added support for password expiration policies for Oracle, Sybase and Microsoft SQL Server
  • Added ability to change password
  • Added support for Run / Script Execute stored procedures with output parameters
  • Scripting improvements for DB2
  • Added option to script one object per file
  • Changed all DB2 catalog queries for to include WITH UR clause
  • Fixed exception when importing large Excel files
  • Fixed inconsistent behavior for CHAR columns between ANSI and UNICODE versions
  • Fixed intellisense for Oracle
  • Fixed incorrect painting on Vista and Server 2008
  • Improved compatibility with some ODBC drivers
  • Small changes and improvements in different areas

Version 3.30 (26 Apr, 09)

  • Added support for DB2 iSeries/AS400
  • Added option to reconnect with different credentials
  • Reload list of schemas / databases on reconnect
  • Fixed import from Excel ignoring values for some fields
  • Fixed issue with Speed Typing settings not being saved correctly
  • Server explorer enhancements
  • Fixed couple scripting errors for DB2 z/OS
  • Improved handling of script variables
  • Small changes and improvements in multiple areas

Version 3.29 (01 Mar, 09)

  • Added Microsoft and Sybase user types to Intellisense
  • Added "Insert New Data Row" option for tables
  • Added option to connect to Sybase IQ / Anywhere through Open Client or ODBC
  • Added shortcut keys to Show/Hide Results (F11) and Show/Hide Objects (Ctrl+F11)
  • Added option to output informational and error messages into Result Grid
  • Fixed access violation when opening workspace referencing non existent files
  • Fixed access violation for Oracle when entering SQL Plus commands
  • Fixed error displaying functions in Server Explorer for Sybase ASE 15.x
  • Fixed IDENTITY and COLLATION clause scripting for Microsoft SQL Server
  • Fixed Excel export for some locales
  • Fixed issue with Favorites not being saved in correct location
  • Objects with names containing "." characters were not handled correctly
  • ESC key was not closing some dialogs
  • Visual data compare was not correctly ignoring trailing right whitespaces
  • Improved usability and couple small improvements in different areas

Version 3.28 (06 Feb, 09)

  • Added support for Sybase SQL Anywhere and Sybase IQ
  • Added new feature: Quick filter in Object View
  • Added parameterized queries and substitution variables
  • Added ability to define completion keys for Intellisense
  • Added two new Excel export options: text, as displayed
  • Added "Edit Mode" for procedures / functions / packages
  • Added option to force "." as decimal separator
  • Fixed Intellisense not showing other Databases / Schemas
  • Fixed issue with Replace dialog hanging
  • Fixed scripting of user defined types for Sql Server and Sybase
  • Fixed incorrect number display for some locales
  • Intellisense enhancements
  • Scripting improvements
  • Usability improvements

Version 3.27 (07 Dec, 08)

  • Added SQL formatter / Beautifier (Professional version only)
  • Added supports for proportional and Asian fonts. Better IME support
  • Added ability to retrieve parent / child rows from Result Grid
  • Intellisense improvements
  • Improved SQL templates support
  • Improved compatibility with some ODBC drivers. Added batch separator (;) for ODBC sources
  • Oracle RAW and LONG RAW columns were not displayed correctly
  • Fixed speed typing not working correctly
  • Fixed error when changing server types in login dialog
  • Fixed issue with maximized window covering task bar
  • Fixed issue with not being able to edit data in Sybase tables

Version 3.26 (05 Oct, 08)

  • Changed how DECIMAL and NUMERIC columns handled.
  • Added back display of table row count. Now it's an option
  • Intellisense support for multiple temp tables in Sybase
  • Added ability to execute stored procedures and functions from Editor popup menu
  • New and changed Admin queries
  • ODBC connection improvements
  • Small GUI changes

Version 3.25 (07 Sep, 08)

  • Added option to not open connections when loading Session State
  • Added option to automatically disconnect from Server after user specified time period
  • Added option to commit or rollback when closing Oracle connections
  • Added support for SQL User Defined Functions for Sybase 15
  • Improved handling of temp tables for Sybase and Microsoft Sql Server
  • Couple improvements for ODBC connections
  • Fixed slow database change for Sybase ASE
  • Fixed issue with not releasing DB2 locks in some rare circumstances
  • Fixed issue with error lines not being indicated correctly for Sql Server
  • Fixed issue with number formats for some locales when generating INSERT/SELECT/UPDATE
  • Fixed issue with automatically committing changes when editing table data for Oracle when AUTO COMMIT is off
  • Enhancements and improvements in GUI, Editor and Results Grid

Version 3.24 (29 Jul, 08)

  • Some Results Grid shortcuts were not working
  • Fixed generate table script. Order of defaults, identity and constraints was wrong
  • Fixed identifiers not being quoted correctly sometime
  • Added diff options (case sensitive, ignore white space)
  • Added menus for Quick diff
  • Added ability to Edit / Delete Data Sources from Quick Connect
  • More color options (variable and command colors)
  • Intellisense list now shows table columns in create table order
  • SQL execution history now persist between restarts
  • Added option to copy column names with types and generate create table statement in Result Grid
  • Fixed Shift+Tab working inconsistently

Version 3.23 (09 Jun, 08)

  • Added support for Microsoft SQL Server 2008
  • Added support for Oracle 11g
  • Fixed error when using Oracle Client version prior to 8.1.xx
  • Fixed Intellisense for Oracle stored procedures broken in previous release
  • Enable multi line substitution values in Speed typing
  • Improved Visual Diff interface. Faster diff algorithm
  • New Quick Diff feature. Drag and drop text, script tab or result tab on a Quick Diff toolbar button to run diff between two items
  • Minor GUI changes

Version 3.22 (22 May, 08)

  • Fixed and added more options for multi selection in Object View
  • DBMS_OUTPUT was not working correctly in unicode version
  • Remember current script directory for each server connection
  • Fixed Replace Dialog hanging when doing replace all
  • Fixed couple issues with Intellisense for DB2. Missing procedures, showing of system views
  • BIGINT values now exported to Excel as text
  • Fixed incorrect number formatting
  • Some other minor changes and fixes

Version 3.21 (11 May, 08)

  • Object View now allows multiple selections. Enabled copying from Object View by using keyboard
  • Added ability to add results of every query to a new Result Tab (hold Shift key while executing query)
  • Added ability to toggle ON/OFF limit for number of query result rows
  • Fixed query results going to a wrong Result Grid
  • Keyboard shortcut menu key now works correctly
  • Fixed "Out of memory" error when selecting binary columns
  • Generate SELECT includes only columns visible in Result Grid
  • Long diagnostic messages not truncated anymore. Improved formatting
  • Fixed keyboard shortcuts conflicting with some keys on international keyboards
  • Some other minor changes and additions

Version 3.20 (27 Apr, 08)

  • Find, Replace and Object Properties dialogs are not modal anymore
  • Added ability to have multiple Result Tabs
  • New option to display column types in Result Grid
  • Locale aware number formatting and new number formatting options
  • Added option to script Oracle objects using DBMS_METADATA package
  • Server Explorer was not correctly displaying DB2 and Oracle procedures
  • Added missing Editor shortcuts for Ctrl+Backspace and Ctrl+Delete

Version 3.19 (06 Apr, 08)

  • Unicode version of SqlDbx Pro
  • Removed option to connect to Sql Server through DB-Library
  • Small fixes and changes

Version 3.18 (02 Mar, 08)

  • Fixed issue with intermittent locking of DB2 catalog views
  • Fixed incorrect scripting of DEFAULT values and GENERATED BY columns for DB2
  • Added ability to view BLOB's
  • Added display of return values for Sybase stored procedures
  • Fixed small scripting errors for Sql Server and Oracle
  • Fixed display of unsigned values for Sybase Version 15
  • Small GUI and Editor improvements

Version 3.17 ( 17 Feb, 08)

  • Added multi line cursor insert/delete/type to Script Editor. Added shortcut key to set block selection on (Alt + C)
  • Performance improvements in multiple areas (Export, Generate statements, Editor)
  • Changed how table import/export works
  • Small improvements and fixes in Editor, Excel export, Grid Results
  • Fixed access violation when retrieving Oracle NCLOB columns
  • Updated help file

Version 3.16 (05 Feb, 08)

  • Added extensive column (block) select/copy/cut/paste/drag/drop support to Script Editor
  • Changed behavior for option "Results in Script Window". Now output goes to separate window in a Results Tab
  • Added option to set capitalization for procedures/functions
  • BIGINT columns where not correctly exported to Excel
  • Some other small GUI changes

Version 3.15 (15 Jan, 08)

  • Added ability to directly execute Oracle package procedures and functions from Object View
  • Added two new items to Editor popup menu: Script Object to new Window and Sync Object View
  • Implemented explain plan for IBM DB2/UDB
  • Fixed issue with favorite objects not being refreshed
  • Couple scripting fixes for DB2 and Oracle
  • Small changes in different areas: Editor, Results Grid, Quick Connect
  • Added new shortcut key to switch between Editor and Results Grid (Ctrl + D)

Version 3.14 (06 Jan, 08)

  • New feature: Quick connect
  • Added more options to copy data from Results Grid and paste to Script Editor
  • Fixed copy / paste to Excel
  • Improved ODBC compatibility for some data sources
  • Intellisense extended to work with temporary tables in MS Sql Server and Sybase ASE
  • Added new command line options: -q, -r, -w

Version 3.13 (16 Dec, 07)

  • New features
    Sync Object View with Script Editor
    Added menu and shortcut keys for BEGIN, COMMIT and ROLLBACK TRANSACTION statements
    Added ability to switch AUTO COMMIT ON/OFF for DB2 and Oracle
  • IBM DB2/UDB improvements
    Added support for DB2 UDB version 9.x
    Improved support for zOS and DB2 V7
    SQL parser now better handles DDL an DML batches and recognizes --#SET DELIMITER command. See help for more details
    Admin queries added for versions 8.x and 9.x
    Intellisense recognizes DB2 Aliases
  • Improved IntelliSense
  • Editor now correctly applies color to multi line literal strings
  • Fixed issue with Sql Server and DB2 reporting an error when delete, update or insert did not affect any rows
  • Some minor GUI improvements and usability enhancements. Slight changes to menu structure
  • Fixed Results Grid print preview

Version 3.12 (15 Nov, 07)

  • New feature: Transpose data in Results Grid
  • Added configuration options for delimited file data exports
  • Intellisense was not working correctly for DELETE statement
  • Fixed handling of NULL values in Filter Grid Results
  • Do not truncate trailing blanks for VARCHAR columns when copying from Results Grid
  • Script variables values with spaces do not require quotes anymore

Version 3.11 (28 Oct, 07)

  • New feature: Script variables. See help for details
  • Significantly enhanced Speed Typing. Integrated with Intellisense. Now supports formal arguments
  • Option to parse scripts for syntax errors without execution implemented for Sybase ACE and Sql Server
  • Some other minor GUI enhancements and improvements

Version 3.10 (14 Oct, 07)

  • Intellisense and Auto Complete now work across databases, schemas and owners. Enable it in Options->Editor->Intellisense
  • Improved Intellisense. Now works in more cases
  • Added ability to execute procedures and functions directly from Object View.
  • Scripting for procedure and function execute now uses template parameters
  • Added command line options. SqlDbx Pro only. See help for details
  • Removed option to pre load packages for Intellisense for Oracle (not needed anymore). Fixed couple of bugs in Oracle SQL Parser
  • Fixed issue with mixed case object names and names with embedded spaces for Oracle and DB2
  • Generate INSERT/DELETE/SELECT now correctly handles string with embedded single quotes, binary columns and columns with NULL values
  • Editor performance significantly improved for very long lines
  • Fixed loading of incorrect system tables and views for SQL Server 2005
  • Added shortcut to select SQL block (Ctrl+B). Shortcut for selecting text block changed to Ctrl+Shift+B
  • Some other minor GUI enhancements and improvements

Version 3.00 (03 Sep, 07)

  • Added ability import / export table data to files and Excel
  • Improved support for international date formats in Generate SELECT/INSERT/UPDATE/DELETE
  • Fixed issue with output messages sometimes not displaying correctly for SQL Server
  • Fixed occasional freezing or termination of application while copying data from Result Grid
  • Export to Excel of date and numeric columns does not depends on formats selected in Options anymore
  • Some other minor GUI enhancements and improvements

Version 2.99 (21 Aug, 07)

  • Added ability to create connection aliases
  • Improved data diff
  • Enhanced template management
  • Fixed loading session state when using integrated security
  • Some other minor improvements

Version 2.98 (06 Aug, 07)

  • Fixed exception when accessing table properties in Sybase
  • Fixed capitalize keywords option being always on
  • Added option to manage file extensions

Version 2.97 (30 Jul, 07)

  • Fixed saving / restoring of session state if using multiple computers on a network
  • Fixed errors when creating Oracle triggers
  • Improved Search in database
  • Handle Oracle interval types
  • Better handling of timestamp columns for Oracle and DB2
  • Detect and reload files modified outside SqlDbx
  • Added ability to use wildcards in Find and Replace dialogs
  • Minor fixes and improvements. Some shortcut keys were not working. Missing keywords

Version 2.96 (03 Jun, 07)

  • Enhanced Find and Replace dialogs
  • Fixed couple small issues with Sybase and Oracle.

Version 2.95 (20 May, 07)

  • Now each script tab has it's own associated set of results
  • Redesigned results window.

Version 2.94 (12 May, 07)

  • Fixed incorrect display of BIGINT values
  • Significantly improved diff algorithm. Added ability to compare files
  • Improved support for DB2 7.1 on z/OS. Fixed incorrect scripting of FOREIGN KEY constraints for DB2
  • Fixed issue with expanding table columns for ODBC sources.
  • Minor GUI enhancements. Improved Intellisense keyboard interface

Version 2.93 (29 Apr, 07)

  • Added ability to save and restore user session state
  • Display number of rows affected by INSERT, UPDATE or DELETE statements
  • Intellisense improvements. Enhanced keyboard interface in results grid
  • Improved Visual diff
  • Fixed issue with inability to edit data in results grid for Sybase and SQL Server

Version 2.92 (05 Apr, 07)

  • Added new Favorite Objects feature
  • Improved support for Oracle and Microsoft servers
  • GUI improvements

Version 2.91 (29 Mar, 07)

  • Fixed date format bug introduced in previous release
  • Some other minor fixes

Version 2.90 (18 Mar, 07)

  • Microsoft SQL Server 2005 support
  • Added ability to apply filter in results grid
  • Added support for quoted Identifiers
  • Generate SELECT statement from results grid. Show table constraints in Object View
  • Some other minor fixes

Version 2.89 (04 Mar, 07)

  • Significantly improved support for ODBC sources
  • Added support for Sybase Version 15
  • New Auto Complete feature implemented. It can be configured in Editor Options
  • Multiple Oracle homes support

Version 2.88 (18 Feb, 07)

  • Intellisense changes
    System tables, views and procedures can be added to Intellisense. Options->Editor->Intellisense
    New auto suggest feature. Default shortcut key Ctrl+SPACE. Very basic at this time
    No popup lists and keyword capitalization inside comments
  • SQL History feature completely redone
  • New Quick search in script feature added
  • More DBA related queries
  • Fixed some menu and keyboard shortcuts
  • Some minor GUI changes.

Version 2.87 (07 Feb, 07)

  • Added handling for even more data types for SQL Server and DB2
  • Intellisense now works with procedures and functions in Oracle packages. You can add packages to be included in Intellisense
  • Fixed some accelerators keys not working in certain conditions
  • It's now possible to set values to NULL when editing table data
  • Some other minor enhancements and performance improvements in various areas

Version 2.86 (15 Jan, 07)

  • Added handling for more data types (SQL Server : BIGINT, BINARY, VARBINARY. DB2 : BINARY, VARBINARY)
  • Added option to select alternative background and text color for database connections
  • Copy to clipboard now works in Messages tab
  • Locale specific default date and time formats
  • Added ability to set column formats directly in Results Grid
  • Some other minor enhancements and performance improvements

Version 2.85 (11 Dec, 06)

  • Intellisense and UI improvements
  • Added option to print selection in results grid
  • Minor fixes and enhancements

Version 2.84 (29 Oct, 06)

  • Intellisense improvements. Table aliases recognized. DELETE and UPDATE statements supported. List of columns shows after WHERE and SET clauses
  • Display query plan and query statistics for Sybase, Oracle and SQL Server
  • Alternative window layout option added
  • Improved search in Object View of script editor
  • Fixed file saving to CSV and XML
  • Fixed connect / disconnect without closing script editor
  • Minor fixes and improvements in script editor

Version 2.83 (14 Aug, 06)

  • Allow to directly modify table data in result grid for tables with unique constraints
  • Option to limit number of returned rows. Option to see totals for numeric columns
  • Fixed scripting of Sybase triggers
  • Enable multiple selection in result grid. Copy and Generate statements use multiple selections.
  • Generate WHERE IN (...) expression from result grid
  • Minor improvements in editor, drag and drop, file handling

Version 2.82 (04 Jun, 06)

  • More accurate indication of compile error lines for all Servers
  • Fixed incorrect scripting of unique constraints for Sybase and Microsoft Servers
  • Fixed issue with object dependencies not being displayed correctly
  • Fixed incorrect parsing of CASE and OPEN PL/SQL statements for Oracle
  • Automatically display compile errors for Oracle

Version 2.81 (29 May, 06)

  • Improvements to DB2, Sybase and Oracle scripting
  • Added ability to dynamically connect / disconnect from Server

Version 2.80 (4 Apr, 06)

  • Support for code templates
  • Generate INSERT, UPDATE, DELETE from Results grid
  • Support for new data types in Oracle 10g
  • Improvements to IBM DB2 support

Version 2.70 (3 Feb, 06)

  • SQL Editor improvements.
  • Speed Typing
  • Initial support for Microsoft SQL Server 2005

Version 2.60 (16 Nov, 05)

  • Object scripting improvements
  • Discovery of available Servers

Version 2.50 (15 Jul, 05)

  • Initial support for IBM DB2
  • DBA style queries added

Version 2.00 (8 Jan, 05)

  • First public release of SqlDbx