sql-parser-cst
sql-parser-cst copied to clipboard
MariaDB support
Most of MariaDB syntax is the same as MySQL. This issue lists only the differences.
Expressions
- [x] No JSON operators (
->,->>) - [x] No
MEMBER OFoperator
Query syntax
- [x]
SQL_CACHEmodifier - [x] No
WITH ROLLUPinORDER BY - [x] Limiting:
- [x]
ROWS EXAMINED rows_limit - [x]
OFFSET start {ROW ROWS} - [x]
FETCH { FIRST | NEXT } [ count ] { ROW | ROWS } { ONLY | WITH TIES }
- [x]
- [ ]
PROCEDUREclause - [x] No
FOR SHARE(onlyFOR UPDATE) - [ ]
LOCK IN SHARE MODEwithlock_optionparameter (I've found no examples of thislock_optionbeing used). - [ ]
FROMclause:- [ ] No ODBC
{ OJ }syntax - [ ] No
LATERAL - [ ] No
NATURAL INNER JOIN - [ ]
FOR SYSTEM_TIMEspecification (combined withPARTITION)
- [ ] No ODBC
- [ ]
MINUS {ALL | DISTINCT}in addition toUNIONetc.
Statements
- [ ] DELETE
- [ ]
FOR PORTION OF period FROM _ TO _ - [x]
RETURNINGclause - [ ]
DELETE HISTORY - [x] No
WITHclause
- [ ]
- [ ] UPDATE
- [ ]
FOR PORTION OF period FROM _ TO _ - [ ] No
WITHclause - [ ]
PARTITION (..)clause
- [ ]
- [x] INSERT
- [x]
RETURNINGclause
- [x]
DDL Statements
- [ ] CREATE TABLE
- [ ]
CONSTRAINT [name]can only be used withCHECK(),PRIMARY KEY,FOREIGN KEY,UNIQUE. - [x] no support for
[NOT] ENFORCEDmodifier onCHECK()(or any other) constraint.
- [ ]
- [ ] RENAME TABLE
- [ ]
TABLE[S] - [ ]
IF EXISTS - [ ]
WAIT n | NOWAIT
- [ ]
- [ ] DROP TABLE
- [ ]
WAIT n | NOWAIT
- [ ]
- [ ] ALTER TABLE
- [ ]
ALTER [ONLINE] [IGNORE] TABLE - [ ]
IF EXISTS - [ ]
WAIT n | NOWAIT - [ ] alter actions:
- [ ] no
RENAME [AS], onlyRENAME [TO] - [x]
ADD [COLUMN] [IF NOT EXISTS] - [ ]
ADD [CONSTRAINT [symbol]] FOREIGN KEY [IF NOT EXISTS] ... - [x]
DROP CONSTRAINT IF EXISTS - [x] no
ALTER CONSTRAINT - [x] no
DROP CHECK - [x] no
ALTER COLUMN SET {VISIBLE | INVISIBLE}
- [ ] no
- [ ]
- [ ] CREATE VIEW
- [ ] DEFINER = user | CURRENT_USER | role | CURRENT_ROLE
- [x] IF NOT EXISTS
- [ ] ALTER VIEW
- [ ] DEFINER = user | CURRENT_USER