MCPcopy Create free account
hub / github.com/dolthub/doltgresql / nodeAlterTableSetDefault

Function nodeAlterTableSetDefault

server/ast/alter_table.go:317–338  ·  view source on GitHub ↗

nodeAlterTableSetDefault converts a tree.AlterTableSetDefault instance into an equivalent vitess.DDL instance.

(ctx *Context, node *tree.AlterTableSetDefault, tableName vitess.TableName, ifExists bool)

Source from the content-addressed store, hash-verified

315
316// nodeAlterTableSetDefault converts a tree.AlterTableSetDefault instance into an equivalent vitess.DDL instance.
317func nodeAlterTableSetDefault(ctx *Context, node *tree.AlterTableSetDefault, tableName vitess.TableName, ifExists bool) (*vitess.DDL, error) {
318 expr, err := nodeExpr(ctx, node.Default)
319 if err != nil {
320 return nil, err
321 }
322
323 // GMS requires the AST to wrap function expressions in parens
324 if _, ok := expr.(*vitess.FuncExpr); ok {
325 expr = &vitess.ParenExpr{Expr: expr}
326 }
327
328 return &vitess.DDL{
329 Action: "alter",
330 Table: tableName,
331 IfExists: ifExists,
332 DefaultSpec: &vitess.DefaultSpec{
333 Action: "set",
334 Column: vitess.NewColIdent(bareIdentifier(node.Column)),
335 Value: expr,
336 },
337 }, nil
338}
339
340// nodeAlterTableAlterColumnType converts a tree.AlterTableAlterColumnType instance into an equivalent vitess.DDL instance.
341func nodeAlterTableAlterColumnType(ctx *Context, node *tree.AlterTableAlterColumnType, tableName vitess.TableName, ifExists bool) (*vitess.DDL, error) {

Callers 1

nodeAlterTableCmdsFunction · 0.85

Calls 2

nodeExprFunction · 0.85
bareIdentifierFunction · 0.85

Tested by

no test coverage detected