!!! Under construction !!!
Dialect sensitive editor for SQL and for Procedural-SQL script files (.sql, .plsql) providing advanced editing capabilities.
- Language highlighting configurable in the "Colors & Fonts" IDE settings section
- Code formatting, folding and bracket matching
- Qualified code completion suggesting only suitable variants for the invoking position (it suggests only keywords and objects which are allowed to occur at the given position)
- Two configurable levels for code completion (to narrow down the suggested variants to the desired extent)
- Sortable variant-lists on code completion invocation
- Error highlighting for incomplete statements or invalid references to database entities
- Basic structure projection in the "Structure" tool window
- Statement execution triggers on editor gutter
- Editor intentions (statement execution and selection of connection/schema for the current editor)
- Navigation to object browser for resolved identifiers
- Navigation within editor for aliases
Only language highlighting is supported by the PL/SQL editor for now.
MySql Procedural-SQL is highlighted with the Oracle highlighter
Identifier resolver still experiences issues and may report invalid references even though they are valid. A major redesign of the identifier-resolver is planned already.
Flexible database connectivity management.
- Connections configurable in scope of project or module
- Persistent mapping between connection/schema and sql scripts for providing code completion, navigation and statement execution capabilities.
- Connection pooling for concurrent database access and dedicated connectivity (managed internally)
- Silent connectivity restoring in case of database linkage breaks (e.g. idle session timeouts, administrative session kills)
- Virtual connections for deciding the .sql dialect of the mapped file (no real database behind)
Tool window displaying available connections and the database objects.
- Tree-wise visualization of database connections and hierarchical objects structure
- Linkage to the script editor (providing navigation from resolved identifiers in the editor)
- Contextual popup menu with supported operations on each database entity (e.g. compile, execute, refresh lists)
- Several embedded navigation capabilities via context menu (e.g. from column to its constraints, from synonym to underlying object)
- Accessors for database object editor and method execution operation
- Navigation history and speed search capabilities
- Highlighting of invalid objects, accessors for multiple-compile operation (identify invalid objects and fire compilation operation on them) **
- DDL extraction to editor or to clipboard (deprecated feature - see ddl file creation in code-editor section) **
- Lazy loading of database objects (objects are loaded only on demand from the database to save system resources)
- Intelligent background loading strategies to ensure minimal waiting times for developer
Note: Refreshing objects feature is still in testing phase and not available yet (because of serious system instability hazard)
Statement and database-method execution, compile engine for database programs
- Execution of sql statements can be fired directly from the editor gutter against the database mapped to the editor
- Sticky linkage between statements in editor and execution result (navigation from the editor to the result and backwards is ensured even if the file is being edited)
- Sortable query results in tabular form
- Export of query results to current editor or to clipboard in several formats (sql insert statements, .xls, .csv)
- Message window for failed statement executions
- Executed statement preview window (useful when the underlying statement has been changed in editor)
- Transaction awareness on execution of data manipulation statements (commit and rollback controls are being enabled for the corresponding connection)
- Compiler engine for database program objects (functions, procedures, triggers, packages, types) **
- Method execution engine with persistency of input values and detailed output panel (fire execution of database functions or procedures)
Configuration of execution processes is still pending.
Method execution is still under development and not released yet (execution input mask is released but still draft)
Highlighted code editor for program-objects (e.g. functions) and views
- Editor for database functions, procedures, packages, types and triggers
- Qualified editor for database views (advanced editing capabilities like code completion, folding, navigation, error highlighting)
- Show changes facility (diff visualization for local changes and changes against database)
- Basic team coding support to prevent blind overwriting on concurrent editing (if the edited object was changed by a third party since it was last saved, user will be prompted to merge the versions)
- Support for creation of DDL files for database objects
- DDL file mapping - locating and aggregating project .ddl files with the database objects being edited (ddl files are automatically updated when object is edited)
- Firing compile operation after updating changes to database **
- Compiler error messages in the execution console providing navigation to code (to exact row and column position) **
- Structure projection in the "Structure" tool window (not navigable)
Signature changes on program objects are not reflected in the object browser or structure window due to the missing (not-released) refresh feature (see object browser)
Version conflict editors are not highlighted. Will be fixed in future releases.
Tabular dataset editor for manipulating data in tables and editable views
- Enhanced cell editors for several data types (data choosers, calendar, large text editor)
- Input validation and error highlighting (erroneous inputs are leniently notified by a lightweight error pop-up)
- Data sorting (click on column header will switch the sorting order)
- Gutter highlighting for unsaved changes (inserted, changed or removed entries are emphasized in the editor gutter)
- Data export to file or to clipboard in several formats (sql insert statements, .xls, .csv)
- Flexible data filtering capabilities (simple - list of conditions joined with AND or OR; custom - sql editor for freestyle "where" condition)
- Quick filter suggestions (e.g. "filter by column value")
- Transaction awareness when changing data (commit and rollback controls are being enabled for the corresponding connection)
- Navigable structure projection in the "Structure" tool window
- Smart editing (cell becomes editable right after being selected to skip annoying "double-click to edit")
** Oracle specific feature
On the pipe