ORAdiff - Find the differences between two Oracle Database releases

We are happy to announce that ORAdiff is live! ORAdiff is an Oracle tool that allows you to compare two Oracle Database releases and optionally incremental patch bundles. It reports differences in parameters, privileges, users and roles, reserved words, patch fixes, database homes, objects, and more. It can also be used to obtain an inventory …

Continue reading

Generate APEX application checksum in PL/SQL

In Oracle APEX, generating the application checksum is useful to compare if the application you have running in one workspace is an exact copy of the application running somewhere else. To create this checksum, you can go into Utilities -> Application Checksum. However, it is not very well documented how you could generate this checksum …

Continue reading

LOG(x,y) returning wrong results in some cases

I had a requirement in one tool that I was working to find whether a given table column was power of 2. The easiest way to check would be using the LOG(2,y). If the result was an integer, the number would be power of 2. 2^X = Y     ->     LOG(2,Y)=X And …

Continue reading

ORDS output variable inside a JSON Object

In ORDS, I was working with a GET PL/SQL Handler and I need to produce an output variable inside a JSON Object. My ORDS version, as of today, is 22.1.6. Example: BEGIN ORDS.DEFINE_TEMPLATE( p_module_name => 'test', p_pattern => 'test', p_priority => 0, p_etag_type => 'HASH', p_etag_query => NULL, p_comments => NULL); ORDS.DEFINE_HANDLER( p_module_name => 'test', …

Continue reading

ORDS pagination with PL/SQL source type

Those days, I had a requirement to create an ORDS endpoint that would call a dynamic SQL. Also, my ORDS endpoint was using a GTT and thus first I needed to load this table with some temporary data. Thus, I was left with no other option than using the PL/SQL handler type in my ORDS. …

Continue reading