public virtual void Visit(DmlDeleteStatement node) { VisitInternal(node.Limit); VisitInternal(node.OrderBy); VisitInternal(node.TableNames); VisitInternal(node.TableRefs); VisitInternal(node.WhereCondition); }
public void Visit(DmlDeleteStatement node) { TableReference tr = node.TableRefs; var tbs = node.TableNames; if (tr == null) { var table = tbs[0]; TableAsTableFactor(table); } else { VisitChild(1, _verdictColumn, false, tr); foreach (var tb in tbs) { if (tb is Wildcard) { var trim = tb.TrimParent(2, _trimSchema); _schemaTrimmed = _schemaTrimmed || trim == Identifier.ParentTrimed; _customedSchema = _customedSchema || trim == Identifier.ParentIgnored; } else { var trim = tb.TrimParent(1, _trimSchema); _schemaTrimmed = _schemaTrimmed || trim == Identifier.ParentTrimed; _customedSchema = _customedSchema || trim == Identifier.ParentIgnored; } } } var where = node.WhereCondition; VisitChild(2, _verdictColumn, false, where); if (tr == null) { var order = node.OrderBy; VisitChild(2, false, false, order); } }