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

Method RowIter

server/node/drop_trigger.go:67–85  ·  view source on GitHub ↗

RowIter implements the interface sql.ExecSourceRel.

(ctx *sql.Context, r sql.Row)

Source from the content-addressed store, hash-verified

65
66// RowIter implements the interface sql.ExecSourceRel.
67func (c *DropTrigger) RowIter(ctx *sql.Context, r sql.Row) (sql.RowIter, error) {
68 schema, err := core.GetSchemaName(ctx, nil, c.onTblSchema)
69 if err != nil {
70 return nil, err
71 }
72 collection, err := core.GetTriggersCollectionFromContext(ctx, ctx.GetCurrentDatabase())
73 if err != nil {
74 return nil, err
75 }
76 triggerID := id.NewTrigger(schema, c.onTable, c.trigger)
77 hasTrigger := collection.HasTrigger(ctx, triggerID)
78 if !hasTrigger && c.ifExists {
79 return sql.RowsToRowIter(), nil
80 }
81 if err = collection.DropTrigger(ctx, triggerID); err != nil {
82 return nil, err
83 }
84 return sql.RowsToRowIter(), nil
85}
86
87// Schema implements the interface sql.ExecSourceRel.
88func (c *DropTrigger) Schema(ctx *sql.Context) sql.Schema {

Callers

nothing calls this directly

Calls 5

GetSchemaNameFunction · 0.92
NewTriggerFunction · 0.92
HasTriggerMethod · 0.80
DropTriggerMethod · 0.80

Tested by

no test coverage detected