SUPPORT
  TECHNICAL SUPPORT  |  RELEASE HISTORY  |  RESEND PASSWORD  |  REQUEST KEY 

Release History:

^

SQLDetective 4.4 (Release 1)

02 Mar, 2016

NEW FEATURES

  • NEW: Support for Oracle RAC (Real Application Clusters). The RAC technology allows multiple database instances that work on different servers to access a single Oracle database. In SQLDetective, RAC instances are available in the following modules: “Object Navigator”, “Session Navigator”, “Database Examiner”, “Database Monitor”, “Top Session Locator”.

IMPROVEMENTS

  • Core
    • A pop-up window now appears on the first start of the application showing if there are any updates available. It is shown only once right after closing the “Release Notes” window.
  • Session Navigator
    • New features:
      • New items on the pop-up menu: "Show Blocking Sessions" and "Show Blocked Sessions”. Clicking each of the items opens the “Locks” tab, locates the first value that shows the block, and activates the corresponding “Blocking Locks”/”Blocked Locks” subtabs.
      • New filters in the “Filters” tab: "Blocking Sessions", "Blocked Sessions" and "Blocking/Blocked Sessions". When enabled, they filter the session list and show the blocking/blocked sessions.
      • The "Blocking Session" and "Blocking Session Status" columns are shown when the "Blocking Sessions", "Blocked Sessions" and/or "Blocking/Blocked Sessions" are enabled.
  • Code Review Rules
    • A new rule “Identifier redeclared” was added to the list of Code Review rules. This rule raises violation for duplicated variables, types, constants, and parameters in any combination.
  • DB Connection Window
    • Support for all types of 32-bit Oracle Client.
  • Preferences
    • The “Execute users with no objects from Schemas list” option is now disabled by default, which speeds up the process of populating a Schema list.

BUGS FIXED

  • SQL Editor
    • An error no longer occurs when a statement is executed for the second time with a changed mode of the “Execute statements in the background” option.
    • DB connection is no longer lost on re-executing a statement.
    • Significantly sped up the statistics execution process.
  • Object Navigator
    • If an object is not included in the filter that is used, the following message is now shown when you are trying to locate this object: “Cannot locate the “<ObjectType>.<ObjectName>” object in the ObjectSelector. Please refresh the Object Tree in the Object Navigator and try to locate the object once more.”
  • DB Connection Settings
    • An Oracle client is now detected correctly if two Oracle clients - 32-bit and 64-bit - are installed on one PC.
  • Database Monitor
    • Diagram captions and values are no longer mixed up on resizing the window.
    • An error no longer occurs when trying to load recently generated History.
  • User Wizard
    • Expanded the default column width with privilege names and added hints.
    • The drop-down list with privilege names no longer closes when drilling down through it.
  • Compare Databases
    • User grants are now included in comparison when the “Compare grants” option is enabled.
  • CS Analyzer/Parser/Formatter/Icon Dictionary
    • Analyzer buttons are now available on the toolbars of all editors that have an ability to format and analyze code.
  • View Cursor Field
    • The “View Cursor Field” feature now works correctly and shows a value for the selected field.
  • OSD - Online Support Desk
    • OSD can now work simultaneously in different versions of SQLDetective.
  • Find and Replace Text in Editor
    • An error no longer occurs on using a regular expression to search the “SQL Editor” tab.
  • Main Window
    • All buttons on the taskbar of the Main window are now visible when many windows are open at the same time.

REMOVED FEATURES

  • Object Navigator
    • The locate feature was removed for folders and objects of the upper level nodes in the “ObjectSelector” tree.

SQLDetective 4.3 (Release 9)

16 Apr, 2015

IMPROVEMENTS

  • Core
    • Features and functionalities of the former Developer Kit, DBA Kit, and Code Analyzer Kit are now included (by default) in SQLDetective. Kits are no longer available as an option.
    • Support for Oracle 12c in GUI.
    • Logs on to a database by using LDAP and Direct type connections.
  • Object Navigator
    • “Extract DDL” places the DDL statement in “SQL Editor” instead of placing it in the “DDL Viewer” pop-up window.
    • A new pop-up menu “Locate in ObjectSelector” locates the object selected in ContentSelector in ObjectSelector.
  • Code Analyzer
    • New version of PL/SQL Code Analyzer engine providing 74 Code Review Rules.
    • New Code Review Rules:
      • "RULE optimizer hint" in the "Program Structure" group.
      • "PARALLEL optimizer hint" in the "Program Structure" group.
      • "Exception is not handled in the BEGIN/END block" added to the "Program Structure" group.
      • "An opened cursor must be closed" in the "Program Structure" group.
      • "DROP statement is used" in the "Program Structure" group.
      • "COMMIT and ROLLBACK are allowed if pragma is used" in the "Program Structure" group.
      • "Column alias is missing after AS keyword" in the "Readability" group.
      • "Mandatory comment header is not used" in the "Maintainability" group.
      • "More than one CREATE statement in the script" in the "Readability" group.
      • A string "magic" hard-coded literal value is used in the WHERE clause of the SQL statement" in the "Maintainability" group.
      • A number "magic" hard-coded literal value is used in the WHERE clause of the SQL statement" in the "Maintainability" group.
    • Code Metrics
      • "Code Analyzer Options" implements two models of contributing the number-of-comments parameter used in the Coleman-Oman regression model: interpret COM as percent of lines of comment, ranging from 1 to 100 (enabled by default);or
        interpret COM as a proportion of lines of comment, ranging from 0 to 1.
      • A "Comment Pct." value is displayed with "%" character.
    • Flowchart and Call Tree Diagrams
      • Dramatically improved code analysis performance if flowcharts, Call Tree diagrams and CRUD matrices generation is disabled.
      • Improved legend of Call Tree.
    • Support for interval expressions in conditions.
  • Code Analyzer Options
    • Naming Rules Templates:
      • Ability to specify the DML statement (SELECT/INSERT/UPDATE/DELETE/MERGE) for a "Dataset Object Name (table/view/synonym) in DML statements" naming rule.
      • Ability to specify the Type (Object Type/Nested Table Type/Varray Type) for an "Object Type Name" naming rule.
      • Ability to specify the Subprogram Type (Standalone Function/Standalone Procedure/Package Function/Package Procedure/Object Type Function/Object Type Procedure) for a "Standalone stored program, package subprogram, and object method" naming rule.
      • Ability to specify a Collection, Record or Subtype for a "User-Defined PL/SQL Type Name" naming rule.
      • Renames "Type Name" to "User-defined PL/SQL Type Name" in "Naming Rules Templates".
      • Joins naming rule patterns by AND/OR and AND NOT/OR NOT relations.
      • Ability to define a “negative” pattern.
      • Enables/disables an individual pattern in a group.
      • Ability to define “Case sensitive” for an individual pattern.
      • Moves the pattern up and down.
      • “Check All/Uncheck All” patterns in a specific group or in all groups.
      • A pattern displays a tooltip with detailed information about the pattern.
    • Flowchart and Call Tree Diagrams
      • Ability to generate diagrams in SVG (Scalable Vector Graphics) format. The new option is added to the “Output Diagram Format” drop-down list at “Code Analyzer Options -> Diagrams Options” (main menu “Edit -> Formatting and Analyzing Tools -> Format Options”). The feature works correctly in Internet Explorer 9 and above and in the latest versions of other browsers such us: Chrome, Firefox, Opera.
      • The default number of blocks of Call Tree diagrams and flowcharts is set to 200.
    • Code Review
      • Sorts the code review rules alphabetically by "Name" and "Activity and Name" at the code review group scope.
      • Filters code review rules by "Active Only", "Inactive Only" and "Show All".
      • Searches for code review rules by name.
      • Opens the “Search” window in the “Code Review” list by a shortcut key “CTRL+F”.
      • Displays rationale for the selected Code Review rule. Ability to copy the shown rationale to Clipboard.
    • Formatter:
      • Added the new option “1st level only” at “General Layout -> Linefeeds -> Around a PL/SQL block” (main menu ”Edit -> Formatting and Analyzing Tools -> Format Options”).
    • Code Metrics
      • “?” buttons display descriptions for flagged code metrics.
    • Ability to protect a Code Analyzer Option profile by password.
  • DB Connection Window
    • Simplified sorting data in the “Last Connection” list. The first click the column’s title sorts data ascending, the second click sorts data descending. Hold down Shift to sort data by multiple columns.
    • Displays the customer ID in the license block.
  • Object DDL
    • Support for “COMPRESS FOR” clause.
  • SQL Editor
    • Added “Save” and “Save as” menu items to the pop-up menu of the Editor’s tabs.
  • Dataset Editors
    • Improved display of a BINARY_DOUBLE number.
  • Object Chooser
    • Allows to search and select a synonym and open the table/view that is associated with it in “Smart Dataset”.
  • Table Wizard
    • Displays the table columns in the same order as they are defined in the object type where the table is based.
  • Find Object
    • Capability of object search along with the “Escape” option.
  • System Information
    • Displays a list of installed browsers and highlights the default one that is specified in Windows.

BUG FIXES

  • Core
    • Could raise an “Access Violation” error on application exit if “PL/SQL Debugger” was run.
  • SQL Editor
    • The “Smart Output” option could work illogically in some specific cases.
    • The modified line’s indicator was not turned off after file saving.
    • Comment lines were counted as statements in the total number of the performed statements.
    • Fixed a problem with “Snippet at the cursor position” and “Single statement at the cursor position”.
    • When a new file was opened, the tab’s title was not updated correspondingly.
    • Started consuming CPU in idle after enabling the “Read HTML Output " option at “SQL Editor -> HTTP Output -> Read HTML Output" (main menu “View -> Preferences”) and executing any DML or PL/SQL statement that resulted to the "SQL Output" tab.
    • Could raise an “Access Violation” error on entering the “Data Output” tab.
    • “Invalid stringlist index” error could occur after multiple undo actions.
    • The “SQL Output” tab was cleared after long script execution when the “Clear before execute” option was disabled at “Code Editors -> SQL Editor -> SQL Output” (main menu “View -> Preferences”).
  • Object Navigator
    • The primary key was not shown in the References folder if a foreign key referred to a primary key of a table from not own schema.
    • Did not display the Public schema if the “Exclude users with no objects from Schemas list" option was enabled at “General -> Session” (main menu “View -> Preferences”).
    • The Dependences folder of a PK constraint might not show FK constraints from other schemas.
    • Displayed incorrect version for Oracle Database 12c.
    • Raised the “Grid index out of bounds” error on opening the “Filter” feature if the root node was selected in ObjectSelector.
  • Code Analyzer
    • GLOBAL displayed incorrect Lines of code (LOC) when the script had no code out of the object scope. An issue with TYPE / TYPE BODY was caused by an exceeding line break before the ";" character and an empty line before CREATE OR REPLACE.
    • No linefeed was added after "CREATE [OR REPLACE]" in TYPE specification.
    • "NATURAL JOIN" clause was partially supported.
    • "AT TIME ZONE" clause didn't support the second parameter as an expression.
    • "ANY" function did not work with a list of strings as parameters.
    • "PL/SQL Formatter" incorrectly handled empty lines between single-line comments. If an empty line was surrounded by two lines of single-line comments (one above and one below) then it would be removed by the Formatter.
    • Empty line(s) inside a multi-line comment considered empty lines of code (LOC).
    • The "EXIT" statement used outside of a "LOOP" statement caused a "TElStack is empty" error.
    • Wrapped style for SELECT statement worked incorrectly.
    • Raised unhandled exception on loading Graphical Engine on Windows Server 2003 and 2008.
    • Did not support literal syntax “q'”.
  • Export and Import Wizard
    • Could raise a “storage space” error on exporting data to XLS format.
    • Fixed a problem with saving/restoring templates: the ASCII code is now correctly saved to a template.
  • Schema Compiler
    • Could raise the “ORA-00904” error on opening the “Invalid Objects” tab.
  • Object DDL
    • “LOB STORE AS SECUREFILE” clause of a LOB column was not supported.
    • Included misleading "NOPARALLEL" statement for the index of a temporary table.
  • Database Examiner
    • Raise the “ORA-00907: missing right parenthesis” error on Oracle 9.0 and higher on creating a new filter or editing an existing filter or sorting or filtering the Tablespace list.
  • Find Object
    • Showed the same object two times when search was done by source code.
    • The “Recycle Bin” option was overlapped by the “Repository” option when the window’s width was set to the minimal size.
  • OSD (=Online Support Desk)
    • The “Find Message” feature did not update the content of the message.
  • Query Builder
    • Some link lines were not correctly displayed.
    • Displayed the Link’s pop-up menu even if no link was selected.
  • Smart Dataset
    • Raised the "Bookmark not found (8007)." error after data export.
  • View Wizard
    • Fixed a problem with '&lt;' removal from View's subquery on executing a "CREATE VIEW" statement.
  • Constrain Wizard
    • Check constraint condition was shown incorrectly.
  • Code Analyzer Options
    • "Linefeeds" options on the Comments page were treated as "Ensure Linefeeds" but still worked incorrectly.
  • Code Review
    • The "Exception not handled inside unit" code review rule was incorrectly implemented.
    • A CASE statement with complex expressions could be formatted incorrectly.
  • Call Tree Diagram
    • The generation of a Call Tree might raise an error that *.map file cannot be opened. This could be caused by locking the file after graphical engine crash.
  • Icon Dictionary
    • A tree node of “Action Navigator” and “Movie Navigator” was highlighted in black in Windows with no theme.
  • System Information
    • TNS names might have been displayed incorrectly.
    • OCI version for Oracle Client 12c was shown as for version 11g.
    • An error occurred on opening the window and the content of the window was empty if no Oracle client was installed.

SQLDetective 4.3 (Release 5)

30 Sep, 2013

Improvements

  • Core
    • Improved performance of filling schema/user lists.
    • Support for the ClearType feature of Windows.
    • “Macro Recorder” runs correctly on Windows 7 SP1 and above.
    • Switches between open windows such as “OSD”, “Report Generator”, “Oracle Documentation Browser”, etc. by pressing “Ctrl+Tab”.
    • Increased time to show a hint/tooltip to 5 seconds
    • Improved text in the Commit/Rollback confirmation message boxes.
  • SQL Editor
    • A new checkbox “Query all records” is added to the “Data Output” toolbar. When it's enabled, all records will be retrieved from the database on query execution.
    • Activates the previous Output page that was active before executing an erroneous SQL statement and after fixing the SQL statement and re-executing it.
    • A popup menu of the editor's tab provides a feature to copy the file with the full path to Clipboard.
    • New features “Fold All” and “Unfold All” in the popup menu of the Editor.
    • Defaults the filename to the editor's tab name on saving the editor content to file.
  • Object Navigator
    • Improved the incremental search in the “Object Tree”.
    • Displays the “DEFAULT_ROLE” column in the “Granted Roles” tables of the selected user.
    • New option “Exclude users with no objects from the Schemas list" in Preferences in the "General -> Session" page.
  • Preferences
    • “Expand All” and “Collapse All” features are added.
    • The default value of the “Code Editors -> SQL Editor -> SQL Output -> Size (lines)” setting increased to 100 000 lines.
    • New option “Keep connection alive – Ping the database every <N> seconds” prevents session lost on non-stable connections.
  • Logon to DB
    • Allows opening multiple sessions at one time.
    • Prompts to reconnect to on session lost.
    • “Connection Settings” allows to select a database name in the “SQL*Net Service Names” list and to activate it in the “Database” dropdown of the “Logon” window.
  • Session Navigator
    • Added new columns of view V$SESSION of DB version 11g to the Session list.
    • The prompt message box shown on killing, disconnecting and tracing selected sessions allows to view SQL statements that are to be applied.
  • Code Analyzer Kit -> Core
    • Comments and blank lines in the script that do not belong to any object in the script (for example, comments added by “Code Analyzer” after the script analysis) are now ignored.
  • Code Analyzer Kit -> Code Metrics
    • Improved calculation algorithms for “Maintainability Index” and “Cyclomatic Complexity”.
  • Code Analyzer Kit -> Code Analyzer Options
    • “Code Analyzer Options” provides a new setting to generate package method items in Call Trees grouped in sub-graphs (as before) and non-grouped call trees.
    • By default “Code Analyzer Options” sets alignment of call tree blocks from left to right.
    • “Code Analyzer Options” allows the  reset of either all options from all pages to default or only the settings of the current page.
    • “Code Analyzer Options” provides a new setting “1st level only” for the “General Layout -> Linefeeds -> Around a PL/SQL block” group.
  • Code Analyzer Kit -> Code Analyzer Options -> Naming Rules Templates
    • Joins naming rule patterns by AND/OR and AND NOT/OR NOT relations.
    • Ability to define a “negative” pattern.
    • Enables/disables an individual pattern in a group.
    • Ability to define “Case sensitive” for an individual pattern.
    • Moves the pattern up and down.
    • “Check All/Uncheck All” patterns in a specific group or in all groups.
    • A pattern displays a tooltip with detailed information about the pattern.
  • Code Analyzer Kit -> Code Analyzer Options –> Code Review
    • Code review rules based on flagged code metrics moved from the “Program Structure” group to the “Maintainability” group.
  • Code Analyzer Kit -> Code Analyzer Options –> Code Metrics
    • For each red flagged code metric, displays a button with the “?” icon. Clicking on the button opens a window with a detailed description about the metric.
  • Code Analyzer Kit -> Code Analyzer Options –> Formatter
    • Added the new option “1st level only” for the “General Layout -> Linefeeds -> Around a PL/SQL block”.
    • Prompts the user to change the “Stacked” formatting option to “Wrapped” if at least one setting with such an option is set (for example “List and Operators -> Parameters”) and found in the “Code Analyzer Options”.
  • Compare Databases&Schemas&Objects
    • Improved source code comparison algorithm.
    • Added a new option “Optimize source code before comparing”.
  • OSD (=Online Support Desk)
    • The column “Sent” in the “Received” table was renamed to “Sent by TechSupport” and the column “Received” was added.
    • OSD Updater - new ability to check updates and update SQLDetective offline, from a Windows folder defined in Preferences.
  • Code Assistant
    • Added a new feature “Stay on Top”.
  • Schema Extractor
    • Allows to extract constraints separately.
  • Connection Settings
    • The “Save last <N> connections” default value changed to 9999.
  • System Information
    • Includes both PATH variables “System” and “Session” if they are different.

Bug fixes

  • Core
    • The “Database Monitor” button in the “Task Bar” had the wrong caption when “Database Monitor” was collecting data and a new window was open. The icon was displayed above the caption.
    • Could raise an “Unexpected Error” error on printing datagrid records while adding new records to the table in another “Dataset Editor”.
    • “Date Format” and “Time Format” settings were not initialized by Windows settings on first startup.
    • In some network environments, checking licensed concurrent users might be incorrect.
    • Could raise an “Access Violation” error on session disconnect.
  • SQL Editor
    • Saving Explain Plan result to file could raise the “Out of Memory” error and after that SQLDetective would not respond.
    • “Query by Example” (QBE) worked on the “Data Output” tab only.
    • The first refresh of a datagrid repositioned the bottom record to the top record.
    • Editors in the “SQL Output” and "DBMS Output" pages were switched to “Line Select” mode.
    • Raised an “Access Violation” error when searching in the “Statistic Configurator” tree of the “Statistics” page.
    • “Cannot focus a disabled or invisible window” error occurred when the user highlighted a SELECT statement and then activated the “Explain Plan Tab” and selected “Dataset -> Query by Example -> Switch to Query Mode” in the “Main Menu”.
    • Could raise an “Access Violation” error on query interruption.
    • “SET ROLE” statement was not supported.
    • Could raise an “Grid index out of range” error in the datagrid on scrolling data down (Ctrl+End).
    • A file closed in SQL Editor was kept locked until the application closed.
    • A failed connection to a database was added to the session dropdown.
    • Could raise a “Not enough timers available” error.
    • Could raise an “Unhandled exception report” error.
    • Could not perform “Explain Plan” for a statement having blank lines.
    • Activated the “SQL Output” tab when a statement execution was done from the “Statistics” tab and the “Smart Output” was disabled.
    • The “Suspend script execution on error” option worked incorrectly.
    • The editor pane was not in the proper position after changing the size of the “History List”.
    • The “Open new dataset for each query executed in a bundle” option might be ignored on multiple statements execution.
    • An “Access Violation” error occurred on closing an editor's tab while its content was being analyzed.
    • Parsing of an SQL statement was not performed on a separate thread that blocked the application on parsing complex statements.
  • Stored Program Editor
    • Hyperlink jumps (“Ctrl+left click” and "Go to Declaration”) did not work properly with packaged functions, procedures, constants, etc.
    • “Code Explorer” could not parse code if it contained a statement such as “RETURN schema%table%column%TYPE”.
    • SQL*Plus statements and CREATE statements of non stored objects were parsed incorrectly and could cause the following statements to be parsed incorrectly.
    • Did not show Oracle Warnings on opening an invalid stored program if the “Compile an invalid stored program on opening” setting was off.
    • Did not show Oracle Warnings on opening a valid stored program at all. It showed warnings after recompile only.
    • Could raise an “Access Violation” error on closing the editor.
  • Object Navigator
    • The sub-folder “Synonyms” of the Table/View node was not refreshed properly.
    • Raised an error when the user selected the empty line (no character) in “ContentSelector” and copied it to “SQL Editor”.
    • Allowed to change the object node's caption in edit mode with no effect to the database which confused the user. Now the node caption is not updatable.
    • Could raise a “Not logged on” error on object navigation.
    • Could raise an “Undefined ObjectSelector item” error.
    • Did not load to GUI all user defined scenes.
    • SQLDetective could hang on displaying a DDL for the user that was connected to a database with no DBA privileges.
  • Extract DDL
    • “LOB STORAGE” included the unnecessary parameter “RETENTION”.
    • DDL for the user object type with directory permissions was incorrect.
    • DDL for a role was incorrectly extracted from databases versions 10 and above.
    • DDL for a materialized view based on a prebuilt table was incorrect.
    • DDL for a table with a virtual column was incorrect.
  • Code Analyzer Kit
    • Object type definitions without any attributes but with subprograms were not supported.
    • A DB-Link name containing multiple dots in the table name of the MERGE statement was not supported.
    • MEMBER OF operator with a nested table name enclosed in parentheses was not supported.
    • ORDINALITY token could not be used as an identifier.
    • The conditional INSERT clause was not fully supported: the column list might be omitted in the insert_into_clause.
    • REF token was not recognized properly before the data type name in the VARYING ARRAY object type definition.
    • BINARY_FLOAT and BINARY_DOUBLE data types were not supported.
    • CROSS JOIN clause was not supported.
    • EXTRACT function did not support interval expression after FROM.
    • FIRST_VALUE and NEXT_VALUE functions were not supported.
    • SERIALLY_REUSABLE pragma was not supported.
    • OUTER JOIN clause was not supported.
    • PARALLEL_ENABLE with options was not supported.
    • PARALLEL_ENABLE and PIPELINED clauses might swap their positions in the code.
    • PIVOT and UNPIVOT clauses were not supported.
    • IN clause without parenthesizes was not supported.
    • SYSTIMESTAMP AT TIME ZONE DBTIMEZONE was not supported.
    • Statements having multiline string literals defined in alternative quoting mechanism were not supported.
    • Error logging clause was not supported.
    • INSERT without column list in MERGE was not supported.
    • Single expression without parenthesis in VALUES was not supported.
    • Two or more dots in the remote DB name/data type, procedure/function call was not supported.
    • Any order of HIERARHICAL_QUERY clause/GROUP_BY clause/HAVING condition in the statement was not supported. Oracle DB supports it but Oracle Documentation declares a static order of clauses.
    • Comma was missed in GROUP BY GROUPING SETS clause after analysis.
    • ESCAPE clause in a CASE expression was not supported.
    • AS without a column alias, for example SELECT 1 AS FROM DUAL - Oracle DB supports it but Oracle Documentation does not.
    • CASE..WHEN expression containing IN clause with a sub-query was not supported.
    • Parenthetical query_table_expression was not supported.
    • Complex varray reference in a WHERE clause condition was not supported.
    • References to collection types or indexed tables in an INTO clause was not supported.
    • RESTRICT_REFERENCES pragma in the beginning of the package was not supported.
    • BULK COLLECT INTO in a sub-query of a WITH clause was not supported.
    • DELETE FROM <table> RETURNING statement was not supported.
    • COLLECT aggregate function was not supported.
    • FLASHBACK_QUERY clause was not fully supported. Unlike declaration in Oracle Documentation, Oracle Database allows to execute query with both VERSIONS BETWEEN... and AS OF... clauses.
    • SAMPLE clause in SELECT statements was not supported.
    • Floating-Point conditions were not supported.
    • SET as a name of the subprogram was not supported.
    • EMPTY as a function name was not supported.
    • TYPE without attributes in parentheses was not supported.
    • XMLTABLE with XMLNAMESPACES was not supported.
    • XMLNAMESPACES without DEFAULT clause was not supported.
    • If an EXISTS clause was the last condition in a WHERE clause, then the UNION of the main query was parsed as the UNION for the EXISTS sub-query.
    • TRIGGER_ORDERING clause was not supported.
    • TRIGGER_EDITION clause was not supported.
    • LEAD and LAG functions were not supported.
    • ENABLE/DISABLE in CREATE TRIGGER clause were not supported.
    • AUTO token in the PREDICTION function was not supported.
    • A parenthesized parameter of ESCAPE clause was not supported.
    • Tokens in the “Expecting” column could be incorrect.
    • Hint comment was placed in an incorrect position if it was followed by another comment.
    • The column name might be incorrectly specified in parentheses on the left side of the assignment of the SET clause of the UPDATE statement if the right side was an expression.
    • WHERE condition with a long BETWEEN clause was formatted incorrectly.
    • CREATE TRIGGER/TYPE/TYPE BODY statements could not be combined with CREATE FUNCTION/PROCEDURE/PACKAGE/PACKAGE BODY statements in one script.
    • The schema name in a library name of the type method external declaration was not supported.
    • The first identifier was missed in the formatted text in the external subroutine parameter declaration, in parameters like <ident> INDICATOR <ident>.
    • Formatting of the external subroutine parameters was incorrect in WRAPPED mode: there was no line break even if the number of parameters was large.
    • Comments starting with “--###” were wrongly treated as pseudocode comments.
    • Analysis of a trigger might cause an Access Violation error if the “Linefeed around PL/SQL block” setting was enabled.
    • “/” statement delimiter was not supported.
    • Naming rule templates for subprograms worked improperly when the “Case Insensitive” option was turned off and the pattern was in lower case.
    • If a cursor declaration was after a variable declaration then they were always separated by an empty line even when all linefeed options were off.
    • An empty line was added between the variable declaration section and the BEGIN token even when all linefeed options were off.
    • Did not display the flag icon in the “Code Metrics” tab for flagged code metrics.
  • Code Analyzer Kit -> Code Analyzer Options
    • Naming Rules templates for subprograms worked improperly when “Case Insensitive” option was turned off and the pattern was typed in lower case characters.
    • In some cases the configuration file “ClearSQL.ini” was blocked by Windows and ClearSQL could not save changes to it and raised the error “Unable to write to file”.
  • Code Analyzer Kit -> Code Analyzer Options -> Formatter
    • Some of the “General Layout -> Linefeeds” options worked improperly.
    • If a cursor declaration was after the variable declaration then they were always separated by the empty line even if all linefeed options were off. The same was for the empty line between all variable declarations and the BEGIN token.
  • Code Analyzer Kit -> Call Tree Diagram
    • A Call Tree link might point to the wrong package if multiple packages contained a subroutine with the same name as the link name.
    • Could not generate Call Tree diagrams for some referenced objects.
    • The INSERT relation was incorrectly shown as a SUBROUTINE call.
  • Compare Databases&Schemas&Objects
    • Could raise a “Stack Overflow” error on comparing Oracle DB version 9i against 11g.
    • The “Compare object privileges only” option was renamed to “Compare grants only”.
    • The “Compare object privileges” option was renamed to “Compare grants”.
    • The “SHOW ERRORS” command was wrongly followed by a statement delimiter "/".
  • Export Data
    • If a value of VARCHAR column was '6 A' or similar then it was exported to Excel as '0.25' (number format).
    • Export from multiple tables into one output file exported data of the last table only.
    • Did not remember and restore the specified date and time format in the next session.
  • Preferences
    • Selected page caption in the “Page Navigator” was not visible in Windows Vista and Windows 7 if the corresponding Preferences page was modified.
    • Raised an error “'30.12.1899' is not a valid date and time” on opening the “Unlock Key” page when the Date mask was 'dd.mmm.yyyy'.
  • PL/SQL Debugger
    • Raised an “Access Violation” error when a long execution process was terminated by several “Ctrl+Shift+S” shortcut key presses.
  • Fast Copier
    • A “List index out of bounds (-1)” error occurred if the source table had an object field of a NUMBER type and data in the field had a value with a decimal separator.
    • The “Source table is empty” message occurred on copying data of a table with an object field.
  • Export INSERT Script
    • A “List index out of bounds (-1)” error occurred if the source table had an object field of a NUMBER type and data in the field had a value with a decimal separator.
    • Ignored the date-time format “dd/mm/yy hh:nn:ss AM/PM”.
  • Schema Extractor
    • Removed the unnecessary “Show preferences before extract” option from the “Extract DDL Options” window.
    • “Extraction Order” settings for Constraints and Object Types were ignored.
  • DB Logon
    • Could not logon to a database with an Instant Client if the path to the Instant Client in the system environment PATH did not end with ";".
    • Raises a warning if 32bit Oracle Client 10g and lower is installed to a folder containing parentheses (Windows 64bit).
  • Version Control System
    • Could raise an “Access Violation” error on re-opening a project.
    • Failed connection to a database disabled the “Repository” feature.
  • Job Wizard
    • “'N,NN' is not a valid integer value” error raised on opening the Wizard when the “TOTAL_TIME” field contained a floating value.
  • View Wizard
    • Raised “Unexpected error” and “Comment not terminated properly” errors on applying changes to a database when the view's subquery contained multi-line comments.
    • “Unexpected error” error occurred if the SQL statement of the view object ended with “/” or “;”.
  • Top Session Locator
    • Could raise an “Access Violation” error.
  • Find and/or Replace Text
    • Raised an access violation error when a regular expression was used to delete blank lines.
  • Find Object
    • Raised a “Missing Expression” error on searching materialized views by comments.
  • Query Builder
    • Raised an “You can create a link between [table1] and [table2] only” error on linking tables with the same name but from different schemas.
  • Storage Manager
    • The same temporary tablespace was shown multiple times.
  • Session Navigator
    • Could raise an “Unexpected error” on moving between different records of the Session list.
  • Data grids
    • Raised an error on server mode sorting if the query contained the “UNION” clause.
  • OSD (= Online Support Desk)
    • Kept the folder locked after attaching a file.
    • Fast navigation between messages in the list of messages raised an error.
    • Did not deliver a new license key on SQLDetective upgrade.
    • Displayed the wrong current version of the application on updating the application with a rental license.
    • Preview of the OSD message brought up the SQLDetective Main window and the OSD window was sent to the background.

 


SQLDetective 4.3 (Release 1)

07 Apr, 2009
New features and improvements
  • Core
    • Improved object alteration and error handling in Object Wizards.
    • Added ability to drop a datafile of a tablespace from within ObjectSelector as well as in Storage Manager and Table Wizard. The feature is available for Oracle version 10.2 and above.
    • New option "General -> Session -> Only one connection per instance" -  if checked, allows only one database connection per SQLDetective instance.
    • New setting "General -> Extract DDL -> Include BYTE/CHAR specification" – if checked, includes BYTE/CHAR specification for columns in ObjectSelector, Object Wizards and DDL extraction. The feature is available for Oracle version 9.2 and above.
    • New setting "General -> Session -> Indicate "Connect As" (SysDBA, SysOPER) in the connection string" – if checked, displays SysDBA/SysOPER in the database connection string in the session drop-downs.
    • "Standalone" windows such as OSD, TKProf Shell, Report Generator, etc in maximized state are shown in the main window as child windows.
  • Object Navigator
    • Generates DROP/ENABLE/DISABLE statements for primary/unique/foreign key dependencies.
    • Synchronizes ObjectSelector’s folders on refresh of ContentSelector datagrid.
    • Searches for objects in ObjectSelector's collapsed folders.
    • Validates ObjectSelector’s object folder if an object has been created/altered/dropped in SQL Editor.
    • Validates ObjectSelector’s object dependant folders on object alteration/dropping.
    • Displays primary/unique/foreign keys as dependent objects in the Dependences/References folder.
    • Improved performance and response time of ObjectSelector.
    • New column DATA_DEFAULT in the Columns tab of ContentSelector displays table default value as plain text.
    • UNUSABLE, UNIQUE and IOT – TOP indexes and MAT.VIEW tables are shown in ObjectSelector with specific icons.
    • New menu item "Select Unusable" in ObjectSelector's popup menu – marks all unusable indexes in the Indexes folder.
    • Prints and refreshes object properties.
    • Background job execution.
  • SQL Editor
    • Executes statements in the background (creates separate background session)
    • New setting "Auto Explain Plan" on the Explain Plan tab – if checked, automatically runs Explain Plan for the executed statement.
    • New setting "Display zero values" on the Statistics tab – if unchecked, doesn’t display statistics with zero values.
    • Prints and saves statistics result to TXT/HTML file.
    • Saves Statistics Configurator settings to file.
    • Searches for text in Statistics Configurator.
    • Execution Detail Status of SQL Execution History displays for scripts a number of successfully/failed/broken and totally executed statements.
    • New commands: BROWSE – for the selected in the editor object (table/view/mat.view/synonym) opens a read only dataset; EDIT - for the selected in the editor object (table/view/mat.view/synonym) opens an editable dataset.
    • The Save/Save As buttons become enabled only when text in the editor has been modified.
  • Export Data
    • New format "Fixed Field Spacing"
    • Exports LOB fields to separate files.
    • Improved "MERGE Script" export.
    • Became a non-modal window – it’s possible to switch between the Export Date window and other application windows.
    • New ability to define a WHERE clause for all exporting objects individually.
    • New navigation buttons: First and Last – provides a more convenient way to navigate  pages.
    • New setting "Don't create empty files" – if checked and the exporting object has no records, doesn’t create an empty file.
    • New setting "Prefix filename with export order" – if checked, adds object export order number to file name.
    • New setting "Create "run.sql" launch file" – if checked, generates script file intended for running all exported sql files.
    • New setting "Statement delimiter" – a dropdown with "/" and ";" sql statement delimiters.
    • New setting "Show the process in percentage-of-completion (executes "select count(*)..."" – if checked, shows the process of exporting in % by executing an additional statement for record counting. It’s highly recommended to switch the setting off for datasets that are based on long running queries.
    • New button Count in the "Data Filter" page. Added to avoid automated dataset record counting for better performance.
  • Import Data
    • Became a non-modal window – it’s possible to switch between the Export Date window and other application windows.
    • New navigation buttons: First and Last – provides a more convenient way to navigate pages navigation.
  • Compare Databases/Schemas/Objects
    • New option "Compare object privileges only" – if checked, compares only object privileges for the selected database/schemas/objects
    • New option "Include BYTE/CHAR specification" – if checked, includes BYTE/CHAR column specification in the synchronization script.
    • New option "Ignore column order" in the table tab – if checked, compares columns by name instead of their order.
    • New setting "Text case" – specifies synchronization script text case.
    • New setting "Compare object synonyms" - if checked, compares object synonyms on the object comparison.
    • "Row Count" group is moved to the table tab
    • Ignores quotes in object names.
    • Improved comparison of constraints
  • Stored Program Editor
    • Compiles a stored object with debug information within the editor (new button on the toolbar). New panel of status bar indicates if the object is compiled with debug information.
    • By default, selects the execution of a sub-program that is currently active (where the mouse cursor is) in the Editor.
  • Database Examiner
    • Displays database properties information.
    • Modifies system modifiable initialization parameters.
  • Top Session Locator
    • Click on a segment of the Top <N> Modules and Top <N> Users charts to highlight the corresponding sessions in the session grid.
    • "Command In progress" column displays more descriptive information instead of displaying the command number.
  • ClearSQL add-on
    • New feature "Call Tree" – graphically displays a Call Tree for a standalone object or a subprogram of a package.
  • View Differences
    • New graphical interface with ability to open multiple windows.
  • Session Navigator
    • SQL Trace can be run by using the system package DBMS_ SUPPORT with an ability to collect Waits and Binds.
    • New column "Elapsed Time" on the "Long Operations" tab.
  • Find Objects
    • Searches for text in object and column comments.
  • Server Side Installation
    • Redeveloped graphical interface with an ability to select an ORACLE HOME.
  • View DDL
    • Improved graphical interface with an ability to view different DDLs in different tabs.
  • Relocate Wizard
    • Support for materialized view movement between tablespaces.
  • Group Action
    • Displays detailed information about object compilation errors.
  • Storage Manager
    • Added new fields to the Tablespace and Datafiles lists.
  • Code Assistant
    • Improved the "Find Text" feature.
  • Describe Object
    • New menu item "Refresh" – refreshes/validates all open objects.
  • Preferences
    • New setting in the Session page: "Enable the Commit checkbox in JOB dropping prompt window".
  • Connection Settings
    • Displays location of SQLNet.ora file for the selected Oracle Home and provides an ability to view it in the imbedded text viewer.
  • OSD
    • Improved paste from clipboard to the New Message window of the result of Explain Plan copied from the SQL Editor -> Explain Plan tab.
    • QBD file type is added to the list of acceptable file types for OSD attachments.
  • Datasets
    • "Count Records" executes in a background process and can be interrupted.
  • Grids
    • Autofit column widths and data sorting.
Bug fixes
  • Core
    • Could raise an "Access violation" error when the application is made active after being inactive for certain time.
    • Could raise an "Access violation" error while SQL Editor was executing a long running statement.
    • OSD window forced to become foreground from the background on a new database connection.
  • SQL Editor
    • The window might close unexpectedly during statement execution; after that the application raises an "Access violation" error.
    • Paste from clipboard by using a shortcut key did not work in Search tool of SQL Execution History.
    • Ignored new entered bind variables when the "Keep column settings" option was enabled.
    • Used the single "Execute Statement dialog" in every cases of query executing.
    • Spaces were lost when re-executing the query like "select 'test   test' from dual" and get back when re-executing again.
    • Integer and floating point bind variable values were not properly validated.
  • Object Navigator
    • "Access violation" error might occur on open multiple procedures/functions.
  • Stored Program Editor
    • Could raise an "Access violation" error during window switching.
    •  "Boolean IN" subroutine parameter was detected incorrectly.
  • Compare Databases
    • Synchronization script was uppercased.
    • Column comments could be improperly compared.
  • PL/SQL Debugger
    • Could raise an "Access violation" error during object debugging.
  • Session Navigator
    • Data on the "Long Operations" tab for the selected session was mixed with data of other sessions.
  • Extract DDL
    • Didn't extract the "USING INDEX" clause for table constraints in several cases.
    • Generated prompt 'Creating Constraints' for objects with no constratints
  • Find Files
    • Could not find text in files with long paths.
  • Smart Dataset
    • "Access violation" error might occur on connection lost.
  • Code Insight
    • Could hang the application after the 'connect by prior' clause usage.

 

SQLDetective 4.0 (Release 2)

09 Jun, 2008
New features and improvements
  • Core
    • Advanced bug catching feature integrated with Online Support Desk (OSD).
    • New feature "Sort Alphabetically" - sorts list of object types in Schema Compiler, Schema Extractor, Find Object and Create New Object.
  • SQL Editor
    • Marks the last executed statement with a specific icon; an icon's tool-tip displays detailed information about the last executed statement.
    • Displays a Data Output tab sequence number in its caption.
    • Support for the SQL*Plus command: TIMING START/STOP/SHOW
    • New tab "Errors" for collecting and displaying statement/script execution errors.
    • Keeps user-defined column customization on statement re-execution.
    • Code Folding considers an empty line dividing statements a statement delimiter if the appropriate option is enabled in Preferences (Code Editors -> Display -> Code Folding).
    • Activates the SQL Output tab instead of the DBMS Output tab on statement execution error.
  • Object Navigator
    • Object Properties tab displays new properties such as: OBJECT_SIZE, EXTENTS, DEBUG_INFO, NATIVELY_COMPILED, LAST_COMPILED.
    • Added a new menu item to the popup menu: "Show Differences from Another Object".
    • Added a new menu item to the popup menu: "Compare with Another Object".
  • Code Editors
    • New feature "Format Code" ClearSQL formats code without displaying any analytical information, avoids popping up the result window.
    • Marks modified and saved/compiled lines on the editor's gutter with different colors.
    • SYSDATE can be used as a value for the date type bind variable.
  • Data Grid
    • Fixes and unfixes grid columns.
    • Query by Example Editor (QBE) provides ability to write complex filter and sort conditions in the Export mode.
    • Displays a record number in Singe-record view mode.
  • Preferences
    • Searches for settings and options.
    • New setting "PL/SQL Optimization Level" (General -> Session page) - sets the session PLSQL_OPTIMIZE_LEVEL parameter.
    • New option "Number all lines" (Code Editors -> Display page) - controls drawing line numbers on the editor's gutter.
    • New option "Read DBMS_OUTPUT after executing a select statement" (Code Editors -> DBMS Output page) - controls reading and displaying DBMS_OUTPUT data after select statement execution.
    • New option "Print dataset query and connection string in report title" (Dataset Editors page) - controls output of source query and connection string in the dataset reports.
    • New option "Ignore SQL*Plus commands" (Code Editors -> SQL Editor -> SQL Output page) - controls counting SQL*Plus statements in the script execution statistic report.
    • New setting "Text auto conversion" (Code Editors -> Color page) - controls text auto conversion (uppercase, lowercase, init caps) in the editors.
    • New setting for thousands separator (General page).
  • Stored Program Editor
    • Improved performance of Code Explorer.
    • Improved ability to save object modifications to database/file on object close.
  • Code Insight
    • Shortcut key assignment improved.
    • Chooses templates in Editor when there is no oracle connection.
  • Compare Databases
    • Compares object privileges.
    • Excludes system generated objects.
  • Export Data
    • Sorts a list of exporting objects by using the master-detail relationships rule.
  • Describe Object
    • Navigates to an object in ObjectSelector on which the synonym is based.
  • Trigger Wizard
    • Support for Code Folding.
  • Data Dependency Analyzer
    • Displays integrity constraints icons on datagrid titles.
  • System Information
    • Displays most important OS Environment Variables.
Bug fixes
  • Object Navigator
    • Public synonyms weren't displayed in ContentSelector when the Tables -> Synonyms folder was selected in ObjectSelector.
    • The DDL tab of ObjectSelector displayed an invalid DDL for an object that has been dropped in SQL Editor and hasn't been refreshed in ObjectSelector yet.
    • Did not display object properties for foreign key and check constraints.
    • Did not display the trigger property: trigger body.
  • SQL Editor
    • Semicolon at the end of comment line was considered a statement delimiter
    • "Go to next statement" falsely navigated inside of stored objects source code.
    • A token starting with "&" in "string" of PL/SQL code was considered as a substitution variable.
  • Export Data
    • Could not export data is based on a statement containing a TAB character immediately after the FROM clause.
  • Describe Object
    • Raised "list out of bounds" error on object description from within SQL Editor on lost connection.
  • Stored Program Editor
    • Did not display execution result if a package's subprogram was executed from within the package specification.
    • Ignored the setting "Rewrite the folder on file saving".
  • Storage Manager
    • TEMP tablespace having more then one datafile was displayed as duplicated.
  • Built-in VCS
    • Worked slowly on remote databases.

 

SQLDetective 4.0 (Release 1)

25 Nov, 2007
New tools and utilities:
  • Database Monitor - monitors real-time database performance and displays information in charts grouped by categories; saves gathered information in the background and plays it back for a selected period; and defines alerts and notifies the user in a variety of ways.
  • Database Examiner - provides easy access to database information such as: database system, instance options, initialization and NLS parameters, system events and statistics, SGA memory allocation, list of sessions, tablespaces, datafiles, rollback segments, users, profiles, roles, contexts, directories, database and schema triggers, and resource limits.
  • Top Session Locator - locates the most resource consuming sessions in the database using different activity parameters: CPU, Logical I/O, Physical I/O, Parsers, etc.; and Event Waits parameters: Concurrency, User I/O, System I/O, etc.
  • Compare Databases & Schemas & Objects - compares, displays the differences and generates a synchronization script for: two different databases; one or more schemas in the same or different databases; or one or more objects in the same or different databases with the definition of schema and non-schema types and object filters.
  • TKPROF Shell - a utility that greatly simplifies the usage of the Oracle command line utility TKPROF by providing the user with a graphical interface to all of its parameters and options from within the application.
Other significant enhancements and improvements:
  • Code Folding - selectively collapses (hides) and expands (shows) sections of SQL and Pl/SQL code to make it easier to navigate and read. It helps manage large regions of potentially complicated code within one editor, while viewing only the desired subsections of code during a particular editing session.
  • Schema Compiler - added ability to auto refresh within a certain time period; recompile invalid objects; and send an email alert if invalid objects exist after auto-recompilation.
  • SQL Editor - displays editor pages as tabs; renames tabs and synchronizes editor and data output tab navigation; and provides a new user interface for Editor Page List.
  • Connection Window - remembers the selected Oracle Home and Auto Login settings for a History Connection item.
  • Object Navigator - improved ContentSelector: Objects, Columns, Data, DDL dataset performance; automatically refreshes object information in ObjectSelector (Object Navigator Tree) when an object is changed in Object Wizard.

 

SQLDetective 3.5 (Release 1)

26 Jan, 2007
New tools and utilities:
  • Macro Recorder - quick and easy records and plays back a set of keystrokes, mouse movements and clicks. Macro is used to automate and dramatically reduce time for resolving specific repetitive tasks .
  • Assign individual DB types - a list of pre-defined and user-defined DB types . This feature helps you to organize your DB connections in groups; e.g. DEVELOPMENT, PRODUCTION, TEST and others. Assign background and foreground colors to easy identify them while working with the content of your mission critical DB's
  • XML Editor - a graphical user interface for creating and modifying XML documents and XML Type columns.
  • Find in Files - is a graphical interface to find and/or replace text in files. It provides abilities to load the found file in: SQL Editor, Stored Program Editor and external editor; execute the file as a script in SQL Editor and SQL*Plus, etc .
  • Full-screen Mode - switches the active window to full-screen mode, increasing its workspace.
  • Dataset Calculator - an imbedded calculator for displaying and calculating numeric data in datagrids.
Other significant enhancements and improvements:
  • Core
    • Moves and stores, if a previous version of SQLDetective is found, the application's read/write files to the "..\Documents and Settings\<User>\Application Data\SQLdetective\..." folder. This feature avoids access problems for non-privileged MS Windows users and simplifies a Network type installation.
    • New "DB Type" property of connection allows the differentiation of different kinds of databases (development, production, etc.) by different background color.
    • Added ability to find previous occurrences of a word.
    • Improved stability of the program run under the limited MS Windows user.
  • Object Navigator
    • New tab "Columns" of ContentSelector displays a list of columns with detailed information for a selected table, view or materialized view in the ObjectSelector.
    • ObjectSelector displays an object as a sub-node for which the synonym is created.
    • "Load in Stored Program Editor" popup menu of ObjectSelector loads selected triggers in a Stored Program Editor window.
    • ContentSelector displays comments for tables, views and columns.
    • ContentSelector displays "not null" check constraints.
    • Remembers the "selected" tab in ContentSelector for a particular object.
  • Preferences
    • The "Rollback on disconnect" setting has been changed to "On disconnect: Commit, Rollback, Prompt for Commit/Rollback if changes detected".
    • The "Code Editors->SQL Editor" and "Code Editors->Stored Program Editor" pages have been split to several pages.
    • "Autom. display integrity constraints icon on column header for: SQL Editor, Smart Dataset, Other datasets" setting was added to the Dataset Editors page.
    • "Click on the column title sorts data on the: Server Side, Local Side" setting was added to the Dataset Editors page.
    • "Allow cursor beyond EOF" setting was added to the "Code Editors" page.
  • Find Object
    • Support for regular expressions.
  • Object Privileges
    • Completely new graphical user interface.
    • Support for multiple objects.
  • Stored Program Editor
    • Creates, modifies and debugs database triggers.
    • Provides ability to split multiple objects in a file to different tabs. The setting can be found in the Stored Program Editor page of Preferences.
    • Added ability to combine an object type specification and body to a single file on saving. The setting can be found in the Stored Program Editor page of Preferences.
  • Describe Object
    • Support for multi-selection. Extracts DDL, browses and copies name for selected objects.
    • Support for materialized views.
    • Displays constraints information for the columns that belong to them.
    • Added the "Locate in ObjectSelector" feature.
  • Object Properties
    • Displays comments for tables, views and columns.
  • Dataset Editor
    • "Execution Query" window displays number of fetched records while getting them from the database.
    • Improved selecting of cells and records in datagrids.
    • "Re-sort data" menu item added to the popup menu of datagrid title.
    • Changes background color of datagrid's indicator on data sort.
    • Statusbar displays the number of fetched records from the database.
    • Added ability to open a dataset in read-only mode. The setting can be found in the Dataset Editors page of Preferences.
  • Export Data
    • Support for export to "MERGE" script.
    • Support for export of object type columns to "INSERT" and "MERGE" scripts.
    • Support for exporting columns of object types, nested tables and varying arrays.
  • Dataset Manager
    • "Reverts Changes" menu item has been added to the popup menu.
  • Code Explorer
    • Improved expanding tree nodes.
    • Added the "Expand All" and "Collapse all" features.
  • Duplicate Record
    • Completely new graphical user interface
    • Displays the source and new record, allows modification of the new record before processing.
    • Added a feature to define a number of copies.
  • Online Support Desk
    • Added ability to send the program settings.
    • Checks the OS user rights to update SQLDetective and its add-ons.
  • PL/SQL Debugger
    • Improved display of execution information during debugging.
  • Clear SQL
    • Prints the flowchart diagram.
    • Support for INTERVAL data types.
  • Constraint Wizard
    • Improved GUI and became sizable.
  • Connection Window
    • "Assign DB Type" and "Delete Selected Connections" features can be applied for multiple records in Last Connections.
  • SQL Editor
    • Executes snippet at cursor.
    • Improved saving SQL History.
Bug fixes:
  • Object Navigator
    • Did not show indexes from other schemas.
    • Incorrectly went to the brief mode in the maximized state.
  • Find Object
    • Displayed the object in the result pane as many times as the searched word appeared in its source code.
    • Displayed incorrectly in the maximized state.
  • Dataset Editors
    • Caused several "Access Violation" errors after opening the Embedded Editor in the Single Record View mode and then closing the window.
    • Double click on the first cell did not open an Imbedded Editor.
  • View Differences
    • The horizontal scrollbar did not work correctly.
    • Double click on a word in the left pane text did not select it.
    • The fields for displaying selected objects/files for comparing were updatable.
  • SQL Editor
    • Did not save the date type bind variables correctly.
    • Text selection disappeared might work incorrectly.
    • Could not execute a script file in SQL*Plus.
    • Recognized :NEW and :OLD as bind variables while executing a trigger.
  • Extract DDL
    • Switched back to the restored state of maximized windows.
  • Job Wizard
    • Trunc function used in Interval was extracted incorrectly.
  • Stored program Editor
    • Compiling some stored programs might change the object name in the tab due to incorrect parsing of source code.
    • Did not display the error position in the stored object body when the stored object specification tab was active in the editor.
    • Did not take into account comment signs for a sub program while locating it in source code.
  • Object Properties
    • Might display wrong properties while switching between different objects of different type.
  • Connection Options
    • Could not close the window after making changes in options if oracle client was not installed.
  • Export Data
    • Adding objects from one session and then switching to another session caused errors on extraction start.
    • Could not export a single selected cell.
  • Clear SQL
    • "At least one linefeed around an IF statement'" setting did not work for the inner IF statements.
  • Code Editors
    • "Back Space" did not work correctly with leading spaces.
  • Evaluate Watch
    • Could not assign a NULL value for a watching variable.

 

SQLDetective 3.4 (Release 2)

13 Jul, 2006
Features and improvements:
  • SQL Editor - The "Execute all statements from the cursor position" feature executes all statements loaded to the editor from the cursor position to the end of a script. A plan table is automatically selected, if any, on the initial openening of the Explain Plan tab. A public synonym created for a plan table can be selected for the PUBLIC schema. TIMESTAMP and INTERVAL data types are supported as bind variables.
  • PL/SQL Debugger - " Evaluate/Modify " and "Watch" dialogs, and saving and restoring breakpoints and watches have been improved. Showing debugging-time errors has been moved from the Execution tab to the Errors and Warnings tab.
  • Online Support Desk - Sends files with different formats as attachments. Saves a message as Draft. The Online Support Desk utility and its New Message window are now non-modal. Displays Release Notes for a new build after checking for updates.
  • Icon Dictionary - Displays related actions/icons for the selected movie on the Action Navigator tab. Filters movies by SQLDetective version. The "Delete Selected Temporary Node" and "Delet All Temporary Nodes" menu items have been added to the Action Navigator and Movie Navigator popup menus.
  • Clear SQL - Saves and prints data from the Stucture, Code Review and Metrix tabs.
  • Data Grid - "Autofits to Data and Title" applies when the user double-clicks on the right vertical line of the column title, as in MS Excel.
  • Code Editor - Copies text from the editor in RTF format. Copied text is pasted to the external editors like MS Word as it is without losing formatting and highlighting.
  • Object Navigator - The object name in ObjectSelector's tree is displayed in red for an invalid object, and in gray for a disabled object. A popup menu has been added to the ContentSelector's grid in Single Record mode.
  • Oracle Documentation Library - Managing HTML documentation folders has been improved.
Bug Fixes:
  • SQL Editor
    • The first execution of a stored program that outputs HTML caused an error.
    • Line breaks in text sent by DBMS_OUTPUT.PUT_LINE were not properly recognized.
    • Total execution time did not display milliseconds.
    • Execution of a script with a comment that contained empty lines caused an error.
    • Could not execute a statement with the MERGE INTO clause.
    • An executed query that had the '&' character could not be located in the Editor.
  • Export and Import Data
    • Added new date formats to "Import Data" wizard.
    • The process of importing Excel data stopped on an empty line occurance. The "Ignore empty lines" option has been added to the "Import Data" wizard.
    • First row was empty when data exported to MS Excel.
    • Could not export several tables at a time to the PDT and XML format.
    • Unsupported date format removed from the drop-down list for exporting to the INSERT script.
    • User defined date format and font in "Export Data" wizard ignored on export data to MS Excel.
    • The initial query was printed on all pages on exporting data to PDF format.
  • PL/SQL Debugger
    • Sometimes deleted breakpoints might become active on next debugging.
    • Breakpoints set in Package/Type Body restored incorrectly on next open of a package/type.
    • Fixed problem with modifying DATE watches.
  • Query Builder
    • INSERT statement was generated with ROWID psedo-column.
    • UPDATE statement could be generated with ORDER BY clause.
  • Stored Program Editor
    • Cause an error in Windows 98 on open without a session.
    • File parser might fail when a non-pl/sql file is opened.
  • Connection Window
    • Saving passwords was improved. The "Save passwords" option has been removed from the "Connection Settings" window.
  • Object Navigator
    • Locating objects of Recycle Bin in ObjectSelector's tree did not work correctly.
  • Storage Manager
    • Temporary tablespaces always showed 100% used.
  • Preferences
    • The vertical scrollbar has been removed from the "Warning numbers" grid of the "Compile-time Warnings" page.
  • Session Navigator
    • Clicking on the Close button in the Confirmation dialog of the "Kill Session" feature interpreted as OK instead of Cancel.
  • Icon Dictionary
    • Explain Plan caused the "Access Violation" error in Education Mode on close.
  • Code Editor
    • The Editor did not show a line pasted from Clipboard when it was pasted to the last visible line.
  • System Information
    • Database version was missed

 

SQLDetective 3.4 (Release 1)

22 Jun, 2006
Features and improvements:
  • Online Support Desk - a new and avanced utility with an easy-to-use graphical interface to enable users a fast, easy and direct communication with Technical Support, receive News from Conquest Software Solutions and keep your SQLDetective and its add-ons up-to-date with its auto-update feature.
  • Movie Navigator - a new feature in Icon Dictionary providing a easy navigation through all flash based tuturial movies - currently already over 40 !! - and displays educational movies via an easy-to-use graphical user interface. This tutorials will provide a new and fast way to explore and learn the basics of SQLDetective, its user interface, main tools and special tips & tricks in a very short time.
  • Clear SQL - contains a new FlowChart feature that flowcharts all the subroutines in a PL/SQL package, a stand-alone procedure or block of code and displays them as a set of HTML-wrapped .jpg/.bmp/.gif/.png files.
  • SQL Editor - the "Prompt bind variables before execute" setting has been added to the Bind Variables page.
  • Object Navigator - generates a select count(*) statement for selected objects (tables, views, snapshots). The Pin/Unpin button is not shown for a named scene.
Bug Fixes:
  • Core
    • Losing a database connection might cause the program to crash.
    • Commited all datasets of open sessions on a selected session commit.
    • Table Wizard, View Wizard, Materialized View Wizard were displayed in Task Bar with an object comment.
    • "Find Matching Pairs" caused "Access Violation" error on an empty editor.
  • Object Navigator
    • The Add to Scene menu item did not list open scenes.
    • After deleteting an object in ObjectSelector, the number of objects was displayed incorrectly.
    • Switching between scenes made changed their status.
    • Changes such as: column width, position, and visibility did not save to a scene on exit of the application.
    • Ctrl+Click removed selection from the last selected node after a some pause.
    • Did not display an object's properties in ContentSelector for Refresh Groups and Rollback Segments.
    • Did not refresh ContentSelector on a scene object close.
  • SQL Editor
    • Did not save the "Suspend On Error" checkbox status.
    • "List index out of bounds" error might occur on opening of Code Insight.
    • "Grid index out of bound" error might occur when the user canceled a statement execution with bind variables.
    • Double-click on a grid column caption caused "Access Violation" error when the dataset was not active.
  • Stored Program Editor
    • Did not prompt to save changes made in the code when the database connection was lost.
    • Reload did not refresh information on the Errors and Message tab.
    • Did not display an execution time on the Execution Result tab after debugging a stored program.
    • Executing a stored program that returns a CLOB value caused "Access Violation" error.
    • Double-click on a sub-program of a package opened Stored Program Editor but did not navigate to the sub-program in the code.
  • Table Wizard
    • List of columns was not focused on the Columns node selection.
    • Did not show a list of columns for some object tables.
    • Did not prompt to post changes on closing.
  • Storage Manager
    • Did not display sorting in the Status Bar and sorting icon on column captions.
    • Could not filter and sort columns displaying size such as Size (MB), Used (MB).
  • Smart Dataset
    • Export Data might cause "Bookmark not found" error.
  • Fast Copier
    • Doubled sessions in the Session List on auto-open.
  • Data Dependency Analyzer
    • Dataset Manager did not edit and apply filters.
  • Trigger Wizard
    • Code Explorer did not show all PL/SQL variables.
  • Extract DDL
    • Missed an object owner for columns based on an object type.
  • Icon Dictionary
    • Could not select a Shortcut Schema except for the SQLDetective schema.

Click here to see Release Notes for ver. 2.1.1 - 3.3.1.