photo by Max Langelott on Unsplash
Oracle Database provides the PL/SQL’s quote syntax to avoid any escaping issues in code snippets.
OracleNumber objects represent the exact same decimal value as the original SQL value. Furthermore, OracleNumber objects provide methods for decimal precision arithmetics with the same semantics as the corresponding PL/SQL operations on the NUMBER type.
The following diagram shows a simplified version of MLE’s architecture. Let’s go through some of these boxes and arrows and see what they entail.
Moving further up the stack, let’s discuss the management of MLE contexts that can be created using the DBMS_MLE API. As described earlier, MLE gives control over context management in a database session to developers, providing a flexible programming model. This is not a special feature of MLE though. The ability to use multiple contexts that encapsulate application and runtime state and are logically independent is built deeply into GraalVM. The GraalVM Polyglot API for embedders supports the creation of multiple independent contexts. MLE’s API for context management is implemented directly on top of the Polyglot API.
Recalling that MLE allows creating several contexts in the same database session, let’s have a look at the following diagram which depicts how the context handles directly map to Polyglot contexts managed in the MLE runtime:
If you want to share with us any feedback about using MLE, or request features for further releases, you can do it here.
Learn more about GraalVM and get started with it here: oracle.com/graalvm.
Alina is a developer advocate for GraalVM