Package gudusoft.gsqlparser.resolver2
Class ScopeBuilder
Object
gudusoft.gsqlparser.nodes.TParseTreeVisitor
gudusoft.gsqlparser.resolver2.ScopeBuilder
Builds a complete scope tree using the Visitor pattern.
This class traverses the AST and creates a properly nested scope tree that reflects the SQL structure. All SELECT statements (including subqueries and CTEs) get their own SelectScope with correct parent-child relationships.
Key features:
- Handles nested subqueries with correct parent scope
- Handles CTEs with forward reference support
- Collects all column references with their scope mappings
- Supports complex SQL patterns (CTE + subquery combinations)
Usage:
ScopeBuilder builder = new ScopeBuilder(context, nameMatcher); ScopeBuildResult result = builder.build(statements);
-
Constructor Summary
ConstructorsConstructorDescriptionScopeBuilder(gudusoft.gsqlparser.compiler.TContext globalContext) ScopeBuilder(gudusoft.gsqlparser.compiler.TContext globalContext, INameMatcher nameMatcher) -
Method Summary
Modifier and TypeMethodDescriptionbuild(TStatementList statements) Build scope tree for the given SQL statements.intGet the strategy for handling ambiguous columns.Get the set of INSERT ALL target columns (from TInsertIntoValue columnList).Get the set of SET clause target columns (UPDATE SET left-side columns).Get the TSQLEnv used for table metadata lookup.Get the mapping of USING columns to their right-side tables.Get the set of virtual trigger tables (deleted/inserted in SQL Server triggers).voidpostVisit(TBlockSqlNode node) voidvoidvoidpostVisit(TExpression expression) voidpostVisit(TFromClause fromClause) voidvoidpostVisit(TResultColumn resultColumn) voidvoidpostVisit(TDb2CreateFunction stmt) voidvoidvoidvoidvoidpostVisit(TBlockSqlStatement stmt) voidpostVisit(TCreateFunctionStmt stmt) voidvoidvoidpostVisit(TCreateTriggerStmt stmt) voidpostVisit(TDeleteSqlStatement stmt) voidpostVisit(TExecImmeStmt stmt) voidpostVisit(TInsertSqlStatement stmt) voidvoidpostVisit(TMergeSqlStatement stmt) voidpostVisit(TSelectSqlStatement stmt) voidpostVisit(TUpdateSqlStatement stmt) voidHandle SQL Server trigger UPDATE(column) function.voidpreVisit(TBlockSqlNode node) voidpreVisit(TConstraint constraint) voidvoidvoidpreVisit(TExpression expression) voidpreVisit(TFromClause fromClause) voidpreVisit(TFunctionCall functionCall) voidpreVisit(TInsertIntoValue insertIntoValue) voidvoidvoidpreVisit(TMergeInsertClause insertClause) voidpreVisit(TMergeUpdateClause updateClause) voidpreVisit(TObjectName objectName) voidpreVisit(TOutputClause outputClause) voidpreVisit(TResultColumn resultColumn) voidvoidpreVisit(TDb2CreateFunction stmt) voidvoidpreVisit(TDb2ReturnStmt stmt) voidvoidpreVisit(TMssqlDeclare stmt) voidpreVisit(TMssqlReturn stmt) voidvoidpreVisit(TPlsqlCreateFunction stmt) voidvoidvoidpreVisit(TPlsqlCreateTrigger stmt) voidvoidpreVisit(TCreatePipeStmt stmt) voidpreVisit(TCreateStageStmt stmt) voidpreVisit(TAlterTableStatement stmt) voidpreVisit(TBlockSqlStatement stmt) voidpreVisit(TCommonBlock stmt) voidpreVisit(TCreateFunctionStmt stmt) voidvoidpreVisit(TCreateProcedureStmt stmt) voidvoidpreVisit(TCreateTriggerStmt stmt) voidpreVisit(TCursorDeclStmt cursorDecl) voidpreVisit(TDeleteSqlStatement stmt) voidvoidpreVisit(TExecImmeStmt stmt) voidvoidpreVisit(TInsertSqlStatement stmt) voidvoidpreVisit(TMergeSqlStatement stmt) voidpreVisit(TOpenforStmt openFor) voidpreVisit(TSelectSqlStatement stmt) voidpreVisit(TUpdateSqlStatement stmt) voidpreVisit(TVarDeclStmt stmt) voidsetGuessColumnStrategy(int strategy) Set the strategy for handling ambiguous columns.voidSet the TSQLEnv for table metadata lookup.Methods inherited from class gudusoft.gsqlparser.nodes.TParseTreeVisitor
postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, postVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit, preVisit
-
Constructor Details
-
ScopeBuilder
-
ScopeBuilder
-
-
Method Details
-
setSqlEnv
Set the TSQLEnv for table metadata lookup. This can be used to override the TSQLEnv from globalContext.- Parameters:
sqlEnv- the SQL environment containing table metadata
-
getSqlEnv
Get the TSQLEnv used for table metadata lookup.- Returns:
- the SQL environment, or null if not set
-
setGuessColumnStrategy
Set the strategy for handling ambiguous columns. This value will be passed to namespaces for config-based isolation.- Parameters:
strategy- One of TBaseType.GUESS_COLUMN_STRATEGY_* constants, or -1 to use global default
-
getGuessColumnStrategy
Get the strategy for handling ambiguous columns.- Returns:
- The strategy constant, or -1 if not set (use global default)
-
build
Build scope tree for the given SQL statements.- Parameters:
statements- SQL statements to process- Returns:
- Build result containing scope tree and column mappings
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
Handle SQL Server trigger UPDATE(column) function. The column inside UPDATE() should be resolved to the trigger target table. Example: IF UPDATE(Zip) - Zip column belongs to the trigger's ON table.- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
postVisit
- Overrides:
postVisitin classTParseTreeVisitor
-
preVisit
- Overrides:
preVisitin classTParseTreeVisitor
-
getGlobalScope
-
getNameMatcher
-
getUpdateScopeMap
-
getDeleteScopeMap
-
getUsingColumnToRightTable
Get the mapping of USING columns to their right-side tables. In JOIN...USING syntax, USING columns should preferentially resolve to the right-side (physical) table for TGetTableColumn compatibility.- Returns:
- Map of USING column TObjectName -> right-side TTable
-
getVirtualTriggerTables
Get the set of virtual trigger tables (deleted/inserted in SQL Server triggers). These tables should be excluded from table output since their columns are resolved to the trigger's target table.- Returns:
- Set of TTable objects that are virtual trigger tables
-
getSetClauseTargetColumns
Get the set of SET clause target columns (UPDATE SET left-side columns). These columns already have sourceTable correctly set to the UPDATE target table and should NOT be re-resolved through star column push-down.- Returns:
- Set of TObjectName nodes that are SET clause target columns
-
getInsertAllTargetColumns
Get the set of INSERT ALL target columns (from TInsertIntoValue columnList). These columns already have sourceTable correctly set to the INSERT target table and should NOT be re-resolved against the subquery scope.- Returns:
- Set of TObjectName nodes that are INSERT ALL target columns
-