node-oracledb starting from version 6.0 does not require Oracle Client Libraries.
Please check the blog: https://medium.com/oracledevs/usher-in-a-new-era-with-the-node-oracledb-6-0-pure-javascript-thin-driver-e10e2af693b2
We have this down on our list of nodes to create soon (ish) so I would expect something to be there by the end of the year.
@Jon / @n8n team
As you are part of the n8n team, I am hoping that you will be able to answer my query.
I was wondering what is the procedure for a Source Code contribution for Oracle Database support?
I am from the team which manages the oracledb npm package: oracledb and the current version of the package does not require Oracle Client libraries.
Hey @sharadchan87
Drop an email to nodes@n8n.io, we would love to have a chat about it.
Hi @Jon ,
Thank you for responding.
My colleague @Sudarshan_Soma has sent the mail to nodes@n8n.io for the Oracle Database Connector support.
For the benefit of everyone else, the official Oracle Database connector support GitHub fork is available here.
Awaiting your response to integrate it into n8n.
We have an active team working on this support.
I have raised PR for adding Oracle Database node for SQL operations. Iâll be happy to incorporate any feedback you may haveâplease share
It will be useful for Oracle 11g? As I know, Instant Client is required.
@Ricky The Oracle Database node requires the node-oracledb driver (latest version - 6.9). For Oracle Database 11g, you would need to configure the node to use Oracle Client. There is an option available on the node. The doc PR is under progress and will be complete soon.
However, we would encourage you to move to the 19c Oracle Database version at least to make use of node-oracledbâs Thin mode option, which does not require the Oracle Client.
Thanks for the teamâs contribution, I look forward to this function for a long time, I hope to see asap, thank you! ![]()
iâm new here. 2 Quick Questions: Is the oracle node available in n8n right now? How do i get it into my docker compose setup?
Hi @holgerdeha , Currently the PR is still under review. You can use the branch for testing using these steps, If that works for you : âgit remote add myfork https://github.com/sudarshan12s/n8n.gitâ ; âgit fetch myforkâ; âgit checkout -b pr-19231 myfork/masterâ
I shall inform once the PR is merged and official docker image is available.
Thanks.
quick question,
oracle node could be use with community nodes or only available on official docker image.
oracledb node support is now merged in n8n repo. The node will be available inbuilt with n8n installation.
Hi @Ricky , Youâll be able to use the OracleDB node with a regular n8n installation (for example, via npm install n8n or npx n8n) starting with the next n8n release. Meanwhile you need to build and start n8n . (git clone GitHub - n8n-io/n8n: Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
cd n8n
pnpm i
pnpm build
pnpm start)
thank you!!
last question,
May I ask if there will be Oracle community nodes available for us to use in the future, such as via npm install oracledb? Because the self-hosted version Iâm using may not always be the latest, and I believe many people will encounter the same issue down the line
I think maintaining a separate community OracleDB node may not be feasible, especially when it comes to keeping it in sync with n8nâs core APIs. Iâll check on this and get back to you.
thanks a lot ![]()
![]()
Looks like thick mode has some bug**
ORA-00904: âATCâ.âIDENTITY_COLUMNâ: invalid identifier**
ORA-00904: "ATC"."IDENTITY_COLUMN": invalid identifier
Error details
Other info
n8n version
1.117.0 (Self Hosted)
Stack trace
Error: ORA-00904: "ATC"."IDENTITY_COLUMN": invalid identifier at getColumnMetaData (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-nodes-base@file+packages+nodes-base_@aws-sdk+credential-providers@3.808.0_asn1.js@5_afd197edb2c1f848eae21a96a97fab23/node_modules/n8n-nodes-base/nodes/Oracle/Sql/helpers/utils.ts:274:18) at ExecuteContext.execute (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-nodes-base@file+packages+nodes-base_@aws-sdk+credential-providers@3.808.0_asn1.js@5_afd197edb2c1f848eae21a96a97fab23/node_modules/n8n-nodes-base/nodes/Oracle/Sql/actions/database/select.operation.ts:99:23) at ExecuteContext.router (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-nodes-base@file+packages+nodes-base_@aws-sdk+credential-providers@3.808.0_asn1.js@5_afd197edb2c1f848eae21a96a97fab23/node_modules/n8n-nodes-base/nodes/Oracle/Sql/actions/router.ts:41:17) at ExecuteContext.execute (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-nodes-base@file+packages+nodes-base_@aws-sdk+credential-providers@3.808.0_asn1.js@5_afd197edb2c1f848eae21a96a97fab23/node_modules/n8n-nodes-base/nodes/Oracle/Sql/OracleSql.node.ts:27:10) at WorkflowExecute.executeNode (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-core@file+packages+core_@opentelemetry+api@1.9.0_@opentelemetry+sdk-trace-base@1.30_08b575bec2313d5d8a4cc75358971443/node_modules/n8n-core/src/execution-engine/workflow-execute.ts:1093:8) at WorkflowExecute.runNode (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-core@file+packages+core_@opentelemetry+api@1.9.0_@opentelemetry+sdk-trace-base@1.30_08b575bec2313d5d8a4cc75358971443/node_modules/n8n-core/src/execution-engine/workflow-execute.ts:1274:11) at /usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-core@file+packages+core_@opentelemetry+api@1.9.0_@opentelemetry+sdk-trace-base@1.30_08b575bec2313d5d8a4cc75358971443/node_modules/n8n-core/src/execution-engine/workflow-execute.ts:1708:27 at /usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-core@file+packages+core_@opentelemetry+api@1.9.0_@opentelemetry+sdk-trace-base@1.30_08b575bec2313d5d8a4cc75358971443/node_modules/n8n-core/src/execution-engine/workflow-execute.ts:2324:11
There are my Dockerfile
FROM n8nio/n8n:1.117.0
USER root
RUN apk add --no-cache libaio curl unzip pnpm
RUN curl --noproxy '*' -o oracle-instantclient-basic.zip https://download.oracle.com/otn_software/linux/instantclient/2117000/instantclient-basic-linux.x64-21.17.0.0.0dbru.zip && \
unzip -o -q oracle-instantclient-basic.zip -d /opt/oracle && \
rm -f oracle-instantclient-basic.zip
ENV LD_LIBRARY_PATH=/opt/oracle/instantclient_21_17:$LD_LIBRARY_PATH
RUN rm -rf /var/cache/apk/*
USER node
@Ricky, Thanks for testing this quickly.
Perhaps try testing with Thin mode also, if your use case allows it.
Also, can you try with a different column or row?
Does this column (IDENTITY_COLUMN) and table (ATC) exist?
What Oracle Database version are you using?





