Limitations

The SQL Checker is designed to reduce the number of syntax and portability errors that remain until deployment as this reduces the effort expended in testing for and removing these errors. However, it is not a replacement for a comprehensive test suite as it does not catch all the possible errors. There are a number of reasons for this:

Reliance on the SQLJ Check
The SQL Checker is only as good as the SQLJ compiler that it invokes. Any syntactical or semantic errors which are not reported by the compiler will not be reported by the SQL Checker.
Portability Warnings
The SQL Checker is only designed to capture and report the most common portability errors. It is not a replacement for early and comprehensive testing on the final target database.
Limitation with H2
H2 doesn't provide an implementation of an SQLJ checker; therefore, it only performs a portion of the perceived checks that the SQL Checker does.