Oracle DBMS_SYS_MLE
Version 26ai

General Information
Library Note Morgan's Library Page Header
The best Oracle News for FY2026

Oracle Database 26ai is now availble. If you haven't you downloaded already: Why?
Purpose This Multi-Lingual Engine (MLE) package provides internal support for DBMS_MLE creating a seamless interface between PL/SQL and JavaScript.
AUTHID CURRENT_USER
Data Types TYPE env_names_t IS VARRAY(...) OF ....;
Dependencies
DBMS_LOB DBMS_MLE UTL_IDENT
Documented No
First Available 21c
Security Model Owned by SYS with no privileges granted.
Source {ORACLE_HOME}/rdbms/admin/prvthsmle.plb
Subprograms
 
CREATE_CONTEXT_AS_USER (new 23ai overload)
Undocumented

Overload 1
dbms_sys_mle.create_context_as_user(
user_id       IN BINARY_INTEGER,
uselogonroles IN BOOLEAN,
edition       IN VARCHAR2,
environment   IN VARCHAR2)
RETURN RAW;
TBD
Overload 2 dbms_sys_mle.create_context_as_user(
user_id       IN BINARY_INTEGER,
uselogonroles IN BOOLEAN,
edition       IN VARCHAR2,
environments  IN sys.dbms_sys_mle.env_names_t)
RETURN RAW;
TBD
 
CREATE_CONTEXT_AS_XS_SESSION (new 23ai overload)
Undocumented

Overload 1
dbms_sys_mle.create_context_as_xs_session(
xs_sessionid IN RAW,
edition      IN VARCHAR2,
schema       IN VARCHAR2,
environment  IN VARCHAR2)
RETURN RAW;
TBD
Overload 2 dbms_sys_mle.create_context_as_xs_session(
xs_sessionid IN RAW,
ediiton      IN VARCHAR2,
schema       IN VARCHAR2,
environments IN sys.dbms_sys_mle.env_names_t)
RETURN RAW;
TBD
 
DISABLE_ICS_STDERR (new 23ai)
Undocumented dbms_sys_mle.disable_ics_stderr(
user_id IN BINARY_INTEGER,
name    IN VARCHAR2);
TBD
 
DISABLE_ICS_STDOUT (new 23ai)
Undocumented dbms_sys_mle.disable_ics_stdout(
user_id IN BINARY_INTEGER,
name    IN VARCHAR2);
TBD
 
DISABLE_STDERR (new 23ai overloads)
Disables the stderr stream of all MLE contexts, so that future writes to stderr are discarded

Overload 1
dbms_sys_mle.disable_stderr(user_id IN BINARY_INTEGER);
exec dbms_sys_mle.disable_stderr(105);

PL/SQL procedure successfully completed.
Overload 2 dbms_sys_mle.disable_stderr(
user_id     IN BINARY_INTEGER,
module_name IN VARCHAR2);
TBD
Overload 3 dbms_sys_mle.disable_stderr(
user_id     IN BINARY_INTEGER,
module_name IN VARCHAR2),
env_name    IN VARCHAR2);
TBD
 
DISABLE_STDOUT (new 23ai overloads)
Disables the stdout stream of all MLE contexts, so that future writes to stdout are discarded

Overload 1
dbms_sys_mle.disable_stdout(
user_id     IN BINARY_INTEGER,
module_name IN VARCHAR2);
TBD
Overload 2 dbms_sys_mle.disable_stdout(
user_id     IN BINARY_INTEGER,
module_name IN VARCHAR2),
env_name    IN VARCHAR2);
TBD
Overload 3 dbms_sys_mle.disable_stdout(user_id IN BINARY_INTEGER);
exec dbms_sys_mle.disable_stdout(105);

PL/SQL procedure successfully completed.
 
ENABLE_DEBUGGING_AS_USER (new 23ai)
Undocumented dbms_sys_mle.enable_debugging_as_user(
user_id       IN  BINARY_INTEGER,
debugspec     IN  JSON,
sink          OUT BLOB,
uselogonroles IN  BOOLEAN,
edition       IN  VARCHAR2);
TBD
 
ENABLE_DEBUGGING_AS_XS_SESSION (new 23ai)
Undocumented dbms_sys_mle.enable_debugging_as_xs_session(
xs_sessionid  IN  RAW,
debugspec     IN  JSON,
sink          OUT BLOB,
uselogonroles IN  BOOLEAN,
edition       IN  VARCHAR2);
TBD
 
IMPORT_EVAL_RESULT (new 23ai)
Undocumented

Overload 1
dbms_sys_mle.import_eval_result(
context_handle IN  RAW,
target         OUT BINARY_INTEGER);
TBD
Undocumented

Overload 2
dbms_sys_mle.import_eval_result(
context_handle IN  RAW,
target         OUT VARCHAR2);
TBD
Undocumented

Overload 3
dbms_sys_mle.import_eval_result(
context_handle IN  RAW,
target         OUT CLOB);
TBD
Undocumented

Overload 4
dbms_sys_mle.import_eval_result(
context_handle IN  RAW,
target         OUT BINARY_FLOAT);
TBD
Undocumented

Overload 5
dbms_sys_mle.import_eval_result(
context_handle IN  RAW,
target         OUT BINARY_DOUBLE);
TBD
Undocumented

Overload 6
dbms_sys_mle.import_eval_result(
context_handle IN  RAW,
target         OUT NUMBER);
TBD
Undocumented

Overload 7
dbms_sys_mle.import_eval_result(
context_handle IN  RAW,
target         OUT DATE);
TBD
Undocumented

Overload 8
dbms_sys_mle.import_eval_result(
context_handle IN  RAW,
target         OUT BOOLEAN);
TBD
Undocumented

Overload 9
dbms_sys_mle.import_eval_result(
context_handle IN  RAW,
target         OUT BLOB);
TBD
Undocumented

Overload 10
dbms_sys_mle.import_eval_result(
context_handle IN  RAW,
target         OUT INTERVAL DAY TO SECOND);
TBD
Undocumented

Overload 11
dbms_sys_mle.import_eval_result(
context_handle IN  RAW,
target         OUT TIMESTAMP WITH TIME ZONE);
TBD
Undocumented

Overload 12
dbms_sys_mle.import_eval_result(
context_handle IN  RAW,
target         OUT TIMESTAMP);
TBD
Undocumented

Overload 13
dbms_sys_mle.import_eval_result(
context_handle IN  RAW,
target         OUT INTERVAL YEAR TO MONTH);
TBD
Undocumented

Overload 14
dbms_sys_mle.import_eval_result(
context_handle IN  RAW,
target         OUT JSON);
TBD
 
IMPORT_EVAL_RESULT_CHAR (new 23ai)
Undocumented dbms_sys_mle.import_eval_result_char(
context_handle IN  RAW,
target         OUT CHAR);
TBD
 
IMPORT_EVAL_RESULT_RAW (new 23ai)
Undocumented dbms_sys_mle.import_eval_result_raw(
context_handle IN  RAW,
target         OUT RAW);
TBD
 
SET_ICS_STDERR (new 23ai)
Undocumented dbms_sys_mle.set_ics_stderr(
user_id IN     BINARY_INTEGER,
name    IN     VARCHAR2,
sink    IN OUT CLOB);
TBD
 
SET_ICS_STDERR_TO_DBMS_OUTPUT (new 23ai)
Undocumented dbms_sys_mle.set_ics_stderr_to_dbms_output(
user_id IN BINARY_INTEGER,
name    IN VARCHAR2);
TBD
 
SET_ICS_STDOUT (new 23ai)
Undocumented dbms_sys_mle.set_ics_stdout(
user_id IN     BINARY_INTEGER,
name    IN     VARCHAR2,
sink    IN OUT CLOB);
TBD
 
SET_ICS_STDOUT_TO_DBMS_OUTPUT (new 23ai)
Undocumented dbms_sys_mle.set_ics_stdout_to_dbms_output(
user_id IN BINARY_INTEGER,
name    IN VARCHAR2);
TBD
 
SET_STDERR (new 23ai overloads)
Redirect the stderr stream of all MLE contexts to the given CLOB

Overload 1
dbms_sys_mle.set_stderr(
user_id     IN     BINARY_INTEGER,
module_name IN     VARCHAR2,
sink        IN OUT CLOB
TBD
Overload 2 dbms_sys_mle.set_stderr(
user_id     IN     BINARY_INTEGER,
module_name IN     VARCHAR2,
env_name    IN     VARCHAR2,
sink        IN OUT CLOB
TBD
Overload 3 dbms_sys_mle.set_stderr(
user_id     IN     BINARY_INTEGER,
sink        IN OUT CLOB);
DECLARE
 ioVar
BEGIN
  dbms_sys_mle.set_stderr(105, ioVar);
END;
/

PL/SQL procedure successfully completed.
 
SET_STDERR_TO_DBMS_OUTPUT (new 23ai overloads)
Redirect the stderr stream of all MLE contexts to DBMS_OUTPUT

Overload 1
dbms_sys_mle.set_stderr_to_dbms_output(user_id IN BINARY_INTEGER);
exec dbms_sys_mle.set_stderr_to_dbms_output(135);

PL/SQL procedure successfully completed.
Overload 2 dbms_sys_mle.set_stderr_to_dbms_output(
user_id     IN BINARY_INTEGER,
module_name IN VARCHAR2);
TBD
Overload 3 dbms_sys_mle.set_stderr_to_dbms_output(
user_id     IN BINARY_INTEGER,
module_name IN VARCHAR2,
env_name    IN VARCHAR2);
TBD
 
SET_STDOUT (new 23ai overloads)
Redirect the stdout stream of all MLE contexts to the given CLOB

Overload 1
dbms_sys_mle.set_stdout(
user_id     IN     BINARY_INTEGER,
module_name IN     VARCHAR2,
sink        IN OUT CLOB);
TBD
Overload 2 dbms_sys_mle.set_stdout(
user_id     IN     BINARY_INTEGER,
module_name IN     VARCHAR2,
env_name    IN     VARCHAR2,
sink        IN OUT CLOB);
TBD
Overload 3 dbms_sys_mle.set_stdout(
user_id IN     BINARY_INTEGER,
sink    IN OUT CLOB);
DECLARE
 ioVar
BEGIN
  dbms_sys_mle.set_stdout(105, ioVar);
END;
/

PL/SQL procedure successfully completed.
 
SET_STDOUT_TO_DBMS_OUTPUT (new 23ai overloads)
Redirect the stdout stream of all MLE contexts to DBMS_OUTPUT

Overload 1
dbms_sys_mle.set_stdout_to_dbms_output(
user_id     IN BINARY_INTEGER,
module_name IN VARCHAR2);
TBD
Overload 2 dbms_sys_mle.set_stdout_to_dbms_output(
user_id     IN BINARY_INTEGER,
module_name IN VARCHAR2,
env_name    IN VARCHAR2);
TBD
Overload 3 dbms_sys_mle.set_stdout_to_dbms_output(user_id IN BINARY_INTEGER);
exec dbms_sys_mle.set_stdout_to_dbms_output(105);

PL/SQL procedure successfully completed.

Related Topics
Built-in Functions
Built-in Packages
Database Security
DBMS_MLE
What's New In 21c
What's New In 26ai