Skip to content

Commit 0cbedf5

Browse files
committed
support create table
1 parent e3b1e86 commit 0cbedf5

File tree

5 files changed

+1497
-1004
lines changed

5 files changed

+1497
-1004
lines changed

ast/ddl.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,4 +41,8 @@ type DropColumnClause struct {
4141

4242
type RenameColumnClause struct {
4343
columnClause
44+
}
45+
46+
type CreateTableStmt struct {
47+
node
4448
}

lexer.go

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,28 @@ var keywordMap = map[string]int{
190190
"online": _online,
191191
"checkpoint": _checkpoint,
192192
"rename": _rename,
193+
"create": _create,
194+
"blockchain": _blockchain,
195+
"duplicated": _duplicated,
196+
"global": _global,
197+
"immutable": _immutable,
198+
"private": _private,
199+
"sharded": _sharded,
200+
"temporary": _temporary,
201+
"data": _data,
202+
"extended": _extended,
203+
"metadata": _metadata,
204+
"none": _none,
205+
"sharding": _sharding,
206+
"parent": _parent,
207+
"commit": _commit,
208+
"definition": _definition,
209+
"preserve": _preserve,
210+
"rows": _rows,
211+
"for": _for,
212+
"memoptimize": _memoptimize,
213+
"read": _read,
214+
"write": _write,
193215
}
194216

195217
func init() {

parser_test.go

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,9 @@ alter table db1.table1 drop (id,name)
6767
`,
6868
`
6969
alter table db1.table1 set unused column id
70+
`,
71+
`
72+
alter table db1.table1 rename column id to new_id
7073
`,
7174
}
7275
for _, query := range querys {
@@ -75,3 +78,16 @@ alter table db1.table1 set unused column id
7578
assert.IsType(t, &ast.AlterTableStmt{}, stmt)
7679
}
7780
}
81+
82+
func TestParseCreateTableStmt(t *testing.T) {
83+
querys := []string{
84+
`
85+
crate table db1.table1 (id number, name varchar2(255))
86+
`,
87+
}
88+
for _, query := range querys {
89+
stmt, err := Parser(query)
90+
assert.NoError(t, err, "query: %s", query)
91+
assert.IsType(t, &ast.CreateTableStmt{}, stmt)
92+
}
93+
}

0 commit comments

Comments
 (0)