MCPcopy
hub / github.com/sqlc-dev/sqlc / alterTable

Method alterTable

internal/sql/catalog/table.go:186–222  ·  view source on GitHub ↗
(stmt *ast.AlterTableStmt)

Source from the content-addressed store, hash-verified

184}
185
186func (c *Catalog) alterTable(stmt *ast.AlterTableStmt) error {
187 if !isStmtImplemented(stmt) {
188 return nil
189 }
190 _, table, err := c.getTable(stmt.Table)
191 if err != nil {
192 return checkMissing(err, stmt.MissingOk)
193 }
194 for _, item := range stmt.Cmds.Items {
195 switch cmd := item.(type) {
196 case *ast.AlterTableCmd:
197 switch cmd.Subtype {
198 case ast.AT_AddColumn:
199 if err := c.addColumn(table, cmd); err != nil {
200 return err
201 }
202 case ast.AT_AlterColumnType:
203 if err := table.alterColumnType(cmd); err != nil {
204 return err
205 }
206 case ast.AT_DropColumn:
207 if err := c.dropColumn(table, cmd); err != nil {
208 return err
209 }
210 case ast.AT_DropNotNull:
211 if err := table.dropNotNull(cmd); err != nil {
212 return err
213 }
214 case ast.AT_SetNotNull:
215 if err := table.setNotNull(cmd); err != nil {
216 return err
217 }
218 }
219 }
220 }
221 return nil
222}
223
224func (c *Catalog) alterTableSetSchema(stmt *ast.AlterTableSetSchemaStmt) error {
225 ns := stmt.Table.Schema

Callers 1

UpdateMethod · 0.95

Calls 8

getTableMethod · 0.95
addColumnMethod · 0.95
dropColumnMethod · 0.95
isStmtImplementedFunction · 0.85
checkMissingFunction · 0.85
alterColumnTypeMethod · 0.80
dropNotNullMethod · 0.80
setNotNullMethod · 0.80

Tested by

no test coverage detected