1.0.8 • Published 8 months ago

@rempel/n8n-nodes-oracle v1.0.8

Weekly downloads
-
License
MIT
Repository
github
Last release
8 months ago

Oracle Connector for n8n

This connector enables direct integration with Oracle databases in n8n, offering operations to execute queries and SQL statements.


📥 Installation

  1. Install the package in the nodes directory of n8n:
pnpm install @rempel/n8n-nodes-oracle
  1. Restart n8n.

🔑 Credential Configuration

Required Parameters:

FieldDescription
Connection TypeBasic (manual details) or Connection String (environment variable)
HostOracle server address (for Basic type only)
PortOracle port (default: 1521)
Service NameDatabase Service Name or SID
Environment Variable NameName of the variable containing the connection string (e.g., ORACLE_CONN_STRING)
UserDatabase username
PasswordUser password
Client ModeThin (lightweight) or Thick (requires full Oracle client)

🛠 Available Operations

1. Execute Query (SELECT)

  • SQL Query: SQL query to retrieve data.
    SELECT * FROM employees WHERE department_id = :deptId
  • Parameters: JSON parameters (e.g., {"deptId": 20}).
  • Result Format: Result formatting (Uppercase, Lowercase, Original).

2. Execute Statement (DML/DDL)

  • SQL Query: Commands such as INSERT, UPDATE, or procedure calls.
    INSERT INTO employees (name, role) VALUES (:name, :role)
  • Auto Commit: Enables automatic transaction commit.

⚙️ Advanced Settings

Connection Pool Options:

ParameterDescriptionDefault
Pool MinMinimum connections in the pool1
Pool MaxMaximum connections in the pool10
Queue Timeout (Ms)Connection wait timeout in ms30000

📋 Usage Example

Scenario: Employee Query

  1. Credentials:

    • Type: Basic
    • Host: oracle-prod.example.com
    • User/Password: admin/******
  2. Oracle Node:

    • Operation: Execute Query
    • Query:
      SELECT first_name, salary FROM employees WHERE salary > :minSalary
    • Parameters: {"minSalary": 5000}
    • Format: Uppercase
  3. Output:

    [
      { "FIRST_NAME": "John", "SALARY": 7500 },
      { "FIRST_NAME": "Maria", "SALARY": 6200 }
    ]

⚠️ Requirements and Notes

  1. Oracle Client:

    • For Thick mode, set the environment variables:
      ORACLE_CLIENT_LIB_PATH=/path/to/instantclient
      ORACLE_CLIENT_CONFIG_DIR=/path/to/network/admin
  2. Query Validation:

    • The Execute Query operation blocks non-SELECT commands (e.g., INSERT).
  3. Connection Strings:

    • Example of environment variable:
      ORACLE_CONN_STRING=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle-host)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=XE)))

🔄 Additional Resources

  • Repository: GitHub
  • Support: Submit issues on GitHub to report problems.

Documentation updated for version 1.0.8. Tested with Oracle Database 19c and n8n 1.18+.


💸 Buy Me a Coffee

If you like this project, please consider buying me a coffee. Thank you for your support!

Buy Me a Coffee

1.0.8

8 months ago

1.0.7

8 months ago

1.0.6

8 months ago

1.0.5

8 months ago

1.0.4

8 months ago

1.0.3

8 months ago

1.0.2

8 months ago

1.0.1

8 months ago

1.0.0

8 months ago