static sql_rel * drop_trigger(mvc *sql, dlist *qname) { char *tname = qname_table(qname); sql_schema *ss = cur_schema(sql); if (!schema_privs(sql->role_id, ss)) return sql_error(sql, 02, "DROP TRIGGER: access denied for %s to schema ;'%s'", stack_get_string(sql, "current_user"), ss->base.name); return rel_drop_trigger(sql, ss->base.name, tname); }
static sql_rel * drop_trigger(mvc *sql, dlist *qname, int if_exists) { const char *sname = qname_schema(qname); const char *tname = qname_table(qname); sql_schema *ss = cur_schema(sql); if (!sname) sname = ss->base.name; if (sname && !(ss = mvc_bind_schema(sql, sname))) return sql_error(sql, 02, SQLSTATE(3F000) "DROP TRIGGER: no such schema '%s'", sname); if (!mvc_schema_privs(sql, ss)) return sql_error(sql, 02, SQLSTATE(3F000) "DROP TRIGGER: access denied for %s to schema ;'%s'", stack_get_string(sql, "current_user"), ss->base.name); return rel_drop_trigger(sql, ss->base.name, tname, if_exists); }