Skip to content

Commit dff2740

Browse files
authored
dinosql/internal: Ignore alter sequence commands (#219)
sqlc does not support sequence DDL currently. Ignore DDL that touches sequences.
1 parent 6cb8def commit dff2740

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

internal/catalog/build.go

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ func Update(c *pg.Catalog, stmt nodes.Node) error {
6868
if !ok {
6969
return fmt.Errorf("expected RawStmt; got %T", stmt)
7070
}
71+
7172
switch n := raw.Stmt.(type) {
7273

7374
case nodes.AlterObjectSchemaStmt:
@@ -97,6 +98,28 @@ func Update(c *pg.Catalog, stmt nodes.Node) error {
9798
}
9899

99100
case nodes.AlterTableStmt:
101+
var implemented bool
102+
for _, item := range n.Cmds.Items {
103+
switch cmd := item.(type) {
104+
case nodes.AlterTableCmd:
105+
switch cmd.Subtype {
106+
case nodes.AT_AddColumn:
107+
implemented = true
108+
case nodes.AT_AlterColumnType:
109+
implemented = true
110+
case nodes.AT_DropColumn:
111+
implemented = true
112+
case nodes.AT_DropNotNull:
113+
implemented = true
114+
case nodes.AT_SetNotNull:
115+
implemented = true
116+
}
117+
}
118+
}
119+
120+
if !implemented {
121+
return nil
122+
}
100123
fqn, err := ParseRange(n.Relation)
101124
if err != nil {
102125
return err

0 commit comments

Comments
 (0)