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
Copy file name to clipboardExpand all lines: CHANGELOG.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,6 +7,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
8
8
## [Unreleased]
9
9
10
+
### Added
11
+
-**MariaDB dialect** (`--dialect mariadb`): New SQL dialect extending MySQL with support for SEQUENCE DDL (`CREATE/DROP/ALTER SEQUENCE` with full option set), temporal tables (`FOR SYSTEM_TIME`, `WITH SYSTEM VERSIONING`, `PERIOD FOR`), and `CONNECT BY` hierarchical queries with `PRIOR`, `START WITH`, and `NOCYCLE`
Copy file name to clipboardExpand all lines: docs/SQL_COMPATIBILITY.md
+29Lines changed: 29 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -317,6 +317,27 @@ This matrix documents the comprehensive SQL feature support in GoSQLX across dif
317
317
|**AUTO_INCREMENT**| ✅ Full | ✅ Full | 95% | Column property |
318
318
|**Backtick identifiers**| ✅ Full | ✅ Full | 100% |`` `table`.`column` `` syntax |
319
319
320
+
### MariaDB-Specific Features (v1.14.0+)
321
+
322
+
MariaDB inherits all MySQL features (SHOW, DESCRIBE, REPLACE INTO, ON DUPLICATE KEY UPDATE, GROUP_CONCAT, MATCH/AGAINST, REGEXP/RLIKE, backtick identifiers, etc.) and adds the following extensions:
323
+
324
+
| Feature | Support Level | GoSQLX Parser | Test Coverage | Notes |
|**Snowflake**|`"snowflake"`| Snowflake keywords | Stage operations, VARIANT type | ⚠️ Keyword detection only |
551
572
|**ClickHouse**|`"clickhouse"`| ClickHouse keywords | PREWHERE, FINAL, GLOBAL IN/NOT IN, MergeTree keywords | ✅ v1.13.0 |
573
+
|**MariaDB**|`"mariadb"`| MariaDB keywords (superset of MySQL) | All MySQL features + SEQUENCE DDL, FOR SYSTEM_TIME, WITH SYSTEM VERSIONING, PERIOD FOR, CONNECT BY | ✅ v1.14.0 |
552
574
553
575
### Usage
554
576
@@ -597,6 +619,12 @@ gosqlx format --dialect mysql query.sql
597
619
- No Snowflake-specific parsing (stages, COPY INTO, VARIANT operations)
598
620
- QUALIFY clause not supported
599
621
622
+
#### MariaDB
623
+
- Inherits all MySQL known gaps (stored procedures, HANDLER, XA transactions, CREATE EVENT)
624
+
- JSON_TABLE not supported
625
+
- Spider storage engine syntax not parsed
626
+
- ColumnStore-specific syntax not supported
627
+
600
628
#### ClickHouse
601
629
- PREWHERE clause for pre-filter optimization before primary key scan
602
630
- FINAL modifier on table references (forces MergeTree part merge)
@@ -644,6 +672,7 @@ gosqlx format --dialect mysql query.sql
644
672
|**SQL Server**| 85% | 65% | ⭐⭐⭐⭐ Very Good | Keywords + MERGE |
645
673
|**Oracle**| 80% | 60% | ⭐⭐⭐⭐ Good | Keywords + basic features |
646
674
|**SQLite**| 85% | 50% | ⭐⭐⭐⭐ Good | Keywords + basic features |
675
+
|**MariaDB**| 95% | 90% | ⭐⭐⭐⭐⭐ Excellent | MySQL superset + SEQUENCE DDL, temporal tables, CONNECT BY (v1.14.0) |
647
676
|**Snowflake**| 80% | 30% | ⭐⭐⭐ Good | Keyword detection only |
0 commit comments