diff --git a/packages/dolt/content/SUMMARY.md b/packages/dolt/content/SUMMARY.md index 39a4305b..b5b265e7 100644 --- a/packages/dolt/content/SUMMARY.md +++ b/packages/dolt/content/SUMMARY.md @@ -89,6 +89,7 @@ - [MySQL Information Schema](reference/sql/sql-support/information-schema.md) - [Collations and Character Sets](reference/sql/sql-support/collations-and-charsets.md) - [System Variables](reference/sql/sql-support/system-variables.md) + - [SQL Modes](reference/sql/sql-support/sql-modes.md) - [Miscellaneous](reference/sql/sql-support/miscellaneous.md) - [Supported Clients](reference/sql/supported-clients/README.md) - [Programmatic](reference/sql/supported-clients/clients.md) diff --git a/packages/dolt/content/reference/sql/sql-support/README.md b/packages/dolt/content/reference/sql/sql-support/README.md index a8e567e0..df9f033c 100644 --- a/packages/dolt/content/reference/sql/sql-support/README.md +++ b/packages/dolt/content/reference/sql/sql-support/README.md @@ -22,4 +22,5 @@ This section is divided into five main categories: 4. [Information Schema](information-schema.md): Dolt support for MySQL information schema 5. [Collations and Character Sets](collations-and-charsets.md): SQL features for describing and comparing strings 6. [System Variables](system-variables.md): SQL features for configuring server behavior -7. [Miscellaneous](miscellaneous.md): miscellaneous SQL features +7. [SQL Modes](sql-modes.md): Dolt support for MySQL SQL modes +8. [Miscellaneous](miscellaneous.md): miscellaneous SQL features diff --git a/packages/dolt/content/reference/sql/sql-support/sql-modes.md b/packages/dolt/content/reference/sql/sql-support/sql-modes.md new file mode 100644 index 00000000..40d15abf --- /dev/null +++ b/packages/dolt/content/reference/sql/sql-support/sql-modes.md @@ -0,0 +1,27 @@ +# SQL Modes + +Dolt supports a subset of [SQL modes that MySQL supports](https://dev.mysql.com/doc/refman/8.4/en/sql-mode.html). +SQL modes are added upon request, so please [file an issue](https://github.com/dolthub/dolt/issues) if a SQL mode you need is missing. + +**Currently supporting 4 of 18 MySQL SQL Modes.** + +| Mode | Parsed | Supported | +|:---------------------------------------------------------------|:-------|:----------| +| `ALLOW_INVALID_DATES` | ❌ | ❌ | +| `ANSI_QUOTES` | ✅ | ✅ | +| `ERROR_FOR_DIVISION_BY_ZERO` | ❌ | ❌ | +| `HIGH_NOT_PRECEDENCE` | ❌ | ❌ | +| `IGNORE_SPACE` | ❌ | ❌ | +| `NO_AUTO_VALUE_ON_ZERO` | ✅ | ✅ | +| `NO_BACKSLASH_ESCAPES` | ❌ | ❌ | +| `NO_DIR_IN_CREATE` | ❌ | ❌ | +| `NO_ENGINE_SUBSTITUION` | ✅ | ❌ | +| `NO_UNSIGNED_SUBTRACTION` | ❌ | ❌ | +| `NO_ZERO_IN_DATE` | ❌ | ❌ | +| `ONLY_FULL_GROUP_BY` | ✅ | ✅ | +| `PAD_CHAR_TO_FULL_LENGTH` | ❌ | ❌ | +| `PIPES_AS_CONCAT` | ✅ | ✅ | +| `REAL_AS_FLOAT` | ❌ | ❌ | +| `STRICT_ALL_TABLES` | ❌ | ❌ | +| `STRICT_TRANS_TABLES` | ✅ | ❌ | +| `TIME_TRUNCATE_FRACTIONAL` | ❌ | ❌ |