Skip to content

Commit 2c8b51e

Browse files
committed
fix: also allow as clause in update from
1 parent 1d7696c commit 2c8b51e

File tree

4 files changed

+786
-728
lines changed

4 files changed

+786
-728
lines changed

Diff for: internal/engine/sqlite/convert.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -1003,7 +1003,7 @@ func (c *cc) convertTablesOrSubquery(n []parser.ITable_or_subqueryContext) []ast
10031003
}
10041004

10051005
type Update_stmt interface {
1006-
Qualified_table_name() parser.IQualified_table_nameContext
1006+
Table_name() parser.ITable_nameContext
10071007
GetStart() antlr.Token
10081008
AllColumn_name() []parser.IColumn_nameContext
10091009
WHERE_() antlr.TerminalNode
@@ -1017,7 +1017,7 @@ func (c *cc) convertUpdate_stmtContext(n Update_stmt) ast.Node {
10171017
}
10181018

10191019
relations := &ast.List{}
1020-
tableName := n.Qualified_table_name().GetText()
1020+
tableName := n.Table_name().GetText()
10211021
rel := ast.RangeVar{
10221022
Relname: &tableName,
10231023
Location: n.GetStart().GetStart(),

Diff for: internal/engine/sqlite/parser/SQLiteParser.g4

+1-1
Original file line numberDiff line numberDiff line change
@@ -468,7 +468,7 @@ compound_operator:
468468
update_stmt:
469469
with_clause? UPDATE_ (
470470
OR_ (ROLLBACK_ | ABORT_ | REPLACE_ | FAIL_ | IGNORE_)
471-
)? qualified_table_name SET_ (column_name | column_name_list) ASSIGN expr (
471+
)? table_name (AS_? table_alias)? SET_ (column_name | column_name_list) ASSIGN expr (
472472
COMMA (column_name | column_name_list) ASSIGN expr
473473
)* (FROM_ table_or_subquery)? (WHERE_ expr)? returning_clause?
474474
;

Diff for: internal/engine/sqlite/parser/SQLiteParser.interp

+1-1
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)