๐ Major Fix: ORA-06550 Error Resolution
This release resolves the persistent ORA-06550 compilation errors that users experienced when executing PL/SQL blocks containing BEGIN...END; statements.
๐ Issue Fixed
- #126: Constant Oracle query error: ORA-06550 when using a BEGIN/END; block
๐ง Root Cause & Solution
Problem: The query processing logic automatically removed trailing semicolons from ALL queries to prevent ORA-00933 errors with regular SQL statements. However, PL/SQL blocks require semicolons for proper compilation.
Solution: Implemented intelligent PL/SQL block detection that:
- โ Preserves semicolons for PL/SQL blocks (required for compilation)
- โ Removes semicolons for regular SQL statements (prevents ORA-00933)
- โ Maintains full backward compatibility
๐ What's Fixed
Now works perfectly with all PL/SQL scenarios:
-- โ
 Simple anonymous blocks
BEGIN 
    NULL; 
END;
-- โ
 Blocks with procedures
BEGIN 
    DBMS_OUTPUT.PUT_LINE('Hello World'); 
END;
-- โ
 Blocks with bind variables
BEGIN 
    :result := 'Success'; 
END;
-- โ
 DECLARE blocks
DECLARE 
    v_count NUMBER; 
BEGIN 
    SELECT COUNT(*) INTO v_count FROM dual; 
END;
-- โ
 Stored procedure calls
BEGIN 
    get_employee_name(:emp_id, :emp_name); 
END;๐ฆ Dependency Updates
Updated to latest stable versions for improved security and performance:
- oracledb: ^6.9.0โ^6.10.0(latest Oracle driver)
- @typescript-eslint/eslint-plugin: ^7.13.0โ^8.46.2
- @typescript-eslint/parser: ^7.13.0โ^8.46.2
- @types/jquery: ^3.5.32โ^3.5.33
- del: ^8.0.0โ^8.0.1
- dotenv: ^17.2.1โ^17.2.3
- gulp-eslint-new: ^2.1.0โ^2.5.0
๐งช Enhanced Testing
- Added 4 comprehensive PL/SQL-specific test cases
- All 10 tests passing with 100% success rate
- Verified compatibility with updated dependencies
๐ Documentation Improvements
- Integrated troubleshooting section in README
- Updated documentation with fix information and examples
- Comprehensive error resolution guidance
โก Performance & Quality
- Clean build with zero ESLint errors
- Optimized package size: 13.2 kB compressed (47.6 kB unpacked)
- Production-ready with proper file exclusions
๐ Migration Guide
If you were experiencing ORA-06550 errors:
- Update to v0.7.6: npm update node-red-contrib-oracledb-mod
- Restore proper semicolons to your PL/SQL blocks if you removed them as a workaround
- Use "single-meta"result action for blocks with OUT parameters
- Test your flows - they should now work without errors
๐ก๏ธ Backward Compatibility
โ Fully backward compatible - all existing flows continue to work exactly as before.
Full Changelog: v0.7.5...v0.7.6
Issues Resolved: #126
๐ Installation
npm install node-red-contrib-oracledb-mod@0.7.6Or update via Node-RED Palette Manager.
Full Changelog: v0.7.5...v0.7.6
