Skip to content

Grow the first-class dialect set (Oracle, DB2 partial) #3

Description

@richarah

Per docs/ARCHITECTURE.md, first-class test-backed dialects are ANSI, PostgreSQL, MySQL, SQLite, SQL Server, Snowflake; Oracle/DB2/Firebird/Informix/BigQuery are partial; the rest of the 45-entry enum differs only in quoting/boolean traits.

Promoting a dialect to first-class means:

  • dialect-aware lexing where needed (TokenizerConfig)
  • generator emission rules exercised by exact-string tests in sql/tests/test_dialect_feature_combinations.cpp
  • fixpoint corpus entries in sql/tests/test_roundtrip_property.cpp for the dialect's distinctive constructs
  • honest limitations documented (throw std::logic_error instead of emitting invalid SQL)

Suggested order: Oracle (FETCH FIRST landed; missing: sequences .NEXTVAL, MERGE specifics, PL/SQL blocks), DB2, BigQuery (backtick quoting landed; missing: STRUCT/ARRAY subscripts), DuckDB.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions