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
Notes:
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 object (e.g. compile, execute, refresh lists)
- Several embedded navigation capabilities via contextual popup menu (e.g. from column to its constraints, from synonym to underlying object)
- Trigger for database object editor and method execution
- Navigation history and speed search capabilities
- Invalid objects highlighting and triggers for bulk-compile operation (identify invalid objects and fire compilation operation on them ) **
- DDL file 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
- Sticky linkage between editor and execution (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 file (or 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 result panel (fire execution of database functions or procedures)
Notes:
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 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)
Notes:
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.
** Oracle feature
*** Productivity highlight