Discussions
Categories
- 196.8K All Categories
- 2.2K Data
- 238 Big Data Appliance
- 1.9K Data Science
- 450.3K Databases
- 221.7K General Database Discussions
- 3.8K Java and JavaScript in the Database
- 31 Multilingual Engine
- 550 MySQL Community Space
- 478 NoSQL Database
- 7.9K Oracle Database Express Edition (XE)
- 3K ORDS, SODA & JSON in the Database
- 544 SQLcl
- 4K SQL Developer Data Modeler
- 187K SQL & PL/SQL
- 21.3K SQL Developer
- 295.8K Development
- 17 Developer Projects
- 138 Programming Languages
- 292.5K Development Tools
- 107 DevOps
- 3.1K QA/Testing
- 646K Java
- 28 Java Learning Subscription
- 37K Database Connectivity
- 155 Java Community Process
- 105 Java 25
- 22.1K Java APIs
- 138.1K Java Development Tools
- 165.3K Java EE (Java Enterprise Edition)
- 18 Java Essentials
- 160 Java 8 Questions
- 86K Java Programming
- 80 Java Puzzle Ball
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 94.3K Java SE
- 13.8K Java Security
- 204 Java User Groups
- 24 JavaScript - Nashorn
- Programs
- 437 LiveLabs
- 38 Workshops
- 10.2K Software
- 6.7K Berkeley DB Family
- 3.5K JHeadstart
- 5.7K Other Languages
- 2.3K Chinese
- 171 Deutsche Oracle Community
- 1.1K Español
- 1.9K Japanese
- 232 Portuguese
How to require a module from a dbms_mle script (JavaScript)

Philipp Salvisberg
Member Posts: 181 Silver Badge
I have installed the validator example according https://oracle.github.io/oracle-db-mle/js/udf/ (changed username, password and dbinstance accordingly).
The following query works (returns 1):
select isemail('[email protected]') from dual;
Now, I tried to use the validator within dbms_mle as follows:
create or replace function isemail_dyn(in_email in varchar2) return number is l_script clob; l_handle dbms_mle.script_handle_t; l_result number;begin l_script := q'[mle.binds.result = require('validator').isEmail(mle.binds.email);]'; l_handle := DBMS_MLE.CREATE_SCRIPT('JS', l_script); dbms_mle.bind_variable(l_handle, 'email', in_email); dbms_mle.execute_script(l_handle); dbms_mle.variable_value(l_handle, 'result', l_result); dbms_mle.drop_script(l_handle); return l_result;end;/
The query using this function fails:
select isemail_dyn('[email protected]') from dual;
The error stack looks like this:
ORA-06550: line 1, column 20:dynamic-mle-script--1156712892.js: ReferenceError: require is not definedORA-06512: at "SYS.DBMS_MLE_CAPI", line 97ORA-06512: at "SYS.DBMS_MLE", line 57ORA-06512: at "DEMO.ISEMAIL_DYN", line 906550. 00000 - "line %s, column %s:\n%s"*Cause: Usually a PL/SQL compilation error.*Action:
I've tried tried different variants for "require('validator')", but all with more or less the same result.
Now the question. Is it possible to use previously loaded modules from dbms_mle? If yes, how?
Thank you very much.