EXAplus does not handle quotes correctly in SQL Server-delimited identifiers
Details
| Detail name | Value |
|---|---|
| Changelog Number | 13597 |
| Type | Bug |
| Status | Resolved |
| Affected Versions | Exasol 7.1.0 |
| Fix Versions | JDBC 25.2.5 |
| Resolution Date | 2025-08-19 |
Description
When using EXAplus, an issue occurs when creating a schema using SQL Server-style delimited identifiers (square brackets). If the identifier contains an odd number of double quotes, EXAplus does not properly recognize the end of the SQL statement, causing unexpected behavior.
Steps to Reproduce
- Execute the following SQL statement using EXAplus:
- Execute the following SQL statement using EXAplus:
create schema [AB];
Expected Outcome: The schema is successfully created.
Observed Outcome: Success.
create schema [A"B];
Expected Outcome: The schema is successfully created.
Observed Outcome: EXAplus displays the prompt '1 " > ' and waits for a second line of SQL input, failing to execute the statement correctly.
Workaround
Use double quotes (") instead of square brackets ([ ]) to delimit the identifier. Ensure that any double quotes within the identifier are escaped by doubling them ("").
For example:
create schema "A""B";
This avoids the issue while maintaining proper identifier formatting.
Fix
Update EXAplus to properly handle SQL Server-delimited identifiers (square brackets). Specifically, ensure that identifiers containing an odd number of double quotes are correctly parsed and the end of the SQL statement is recognized. This fix should align EXAplus behavior with standard SQL behavior.