You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This release resolves the persistent **ORA-06550 compilation errors** that users experienced when executing PL/SQL blocks containing BEGIN...END; statements.
- **#126**: Constant Oracle query error: ORA-06550 when using a BEGIN/END; block
**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**
Now works perfectly with all PL/SQL scenarios:
```sql
-- ✅ 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;
```
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`
- Added 4 comprehensive PL/SQL-specific test cases
- All 10 tests passing with 100% success rate
- Verified compatibility with updated dependencies
- Integrated troubleshooting section in README
- Updated documentation with fix information and examples
- Comprehensive error resolution guidance
- Clean build with zero ESLint errors
- Optimized package size: 13.2 kB compressed (47.6 kB unpacked)
- Production-ready with proper file exclusions
If you were experiencing ORA-06550 errors:
1. **Update to v0.7.6**: `npm update node-red-contrib-oracledb-mod`
2. **Restore proper semicolons** to your PL/SQL blocks if you removed them as a workaround
3. **Use `"single-meta"` result action** for blocks with OUT parameters
4. **Test your flows** - they should now work without errors
✅ **Fully backward compatible** - all existing flows continue to work exactly as before.
---
**Full Changelog**: [v0.7.5...v0.7.6](v0.7.5...v0.7.6)
**Issues Resolved**: #126
```bash
npm install node-red-contrib-oracledb-mod@0.7.6
```
Or update via Node-RED Palette Manager.
0 commit comments