Who will be a typical user of ClearSQL 6.9?
PL/SQL developers who maintain, fix errors, modify or provide support for "legacy" PL/SQL code.
- Hundreds of thousands of Oracle databases worldwide containing billions of legacy PL/SQL scripts
- In many cases there is no documentation available and the original developer is no longer present
PL/SQL development teams who use ClearSQL 6.9 to implement coding standards, code quality insurance,
and code formatting to easier maintain their code; and to speed up PL/SQL code development and test cycles
What makes ClearSQL 6.9 unique in the market?
Intensive market investigations did not provide information of any widely known product that could
be considered a "real" competitor to ClearSQL 6.9
It performs PL/SQL code analysis, code formatting, auto-correction of known common code errors,
supporting PL/SQL version starting from 2.1
It automatically analyzes large projects with thousands of PL/SQL scripts with the click of a button
It creates Flowcharts and Call Tree diagrams and CRUD matrices from PL/SQL code accelerating the understanding of the Logic
and Inter-Code Calling Relationships of unfamiliar or legacy code
Flowchart and Call Tree diagram and CRUD matrices are clickable; with a click on a diagram element it loads that code to
the editor and highlights the corresponding line of code
- Exports a single or multiple project flowcharts and Call Tree diagrams into image (GIF, PNG and JPEG), MS Visio Drawing "vdx" and HTML formats with the ability to keep the diagram tree structure in the target Windows folder
A Syntax Checker verifies PL/SQL syntax without executing it in Oracle
Provides complex code metrics information to identify potential problem areas based on complexity, size and modularity
How can I integrate ClearSQL 6.9 into my database development environment?
ClearSQL 6.9 works independently from any software development environment. Code is imported into
ClearSQL 6.9 either from the file system or directly from a database. By importing, the code is physically moved into
ClearSQL's internal storage. By duplicating code in this fashion, ClearSQL 6.9 allows you to experiment with the
code without having to worry about unwanted side effects on your software development environment. Only when
exporting files from ClearSQL 6.9, will changes made while working with ClearSQL 6.9 take permanent effect outside of
ClearSQL's own file storage system.
Will ClearSQL's parser accept all my PL/SQL code?
Unfortunately, Oracle has not published reference grammar for it's PL/SQL language
that allows third-party tool to parse code against the reference grammar. The grammar
documented in Oracle's PL/SQL reference guide is not complete and cannot serve as
reference grammar. In addition, the PL/SQL grammar differs between Oracle versions.
Therefore, we cannot guarantee that your PL/SQL code will pass ClearSQL's parser. As we
have a strong commitment to help our customers, we will work with you to resolve any
compatibility issues you come across when working with ClearSQL 6.9.
Sometimes, ClearSQL 6.9 is very particular about keyword usage. Why?
Both ANSI SQL and Oracle SQL use two types of keywords - reserved and non-reserved.
For example, the keyword SELECT is considered reserved in both ANSI SQL and Oracle SQL,
and - as a consequence - you cannot name any entity (program variable, table name, column name ..)
SELECT. With some keywords, ANSI SQL and Oracle SQL disagree about a particular keyword's
reserved status. For example the keyword MEMBER, e.g. is reserved in ANSI SQL but non-reserved
in Oracle. ClearSQL's own parser has been constantly improved and enhanced over its
7 years of development and being in use. If our users are facing any problems in this area,
we usual provide a fix within 1-2 weeks after the problem report was received.
What exactly does the ClearSQL 6.9 parser check?
The ClearSQL parser is not a replacement, substitute or alternative for Oracle's PL/SQL
compiler. To support ClearSQL's functionality (formatting of PL/SQL code, Flowcharting and Call
Tree Diagrams), the parser will check syntax and static semantics on a per-file basis. The parser will
not perform any inter-file checking, e.g. calls to entries in other packages will not be checked for
correct parameter usage. It is our medium-term goal to enhance the parser to check the complete static
semantics of PL/SQL, including complete interfile checking.
Why does ClearSQL 6.9 come with its own preprocessor? Isn't Oracle's PL/SQL preprocessor good enough?
ClearSQL's preprocessor serves a different purpose than Oracle's PL/SQL preprocessor. ClearSQL 6.9 uses
its own preprocessor to generate diagram variants per preprocessor settings. To be able to do that,
the preprocessor had to be closely integrated with the parser. There is no separate preprocessor phase
in ClearSQL 6.9, as preprocessor directives work as extensions to the language accepted by ClearSQL's parser.