| Package | Description |
|---|---|
| gudusoft.gsqlparser.dlineage | |
| gudusoft.gsqlparser.dlineage.dynamicsql |
| Modifier and Type | Method and Description |
|---|---|
DynamicLineageResult |
DataFlowAnalyzer.resolveDynamicSqlLineage(TCustomSqlStatement procAst,
EDbVendor vendor,
TSQLEnv sqlEnv,
String currentDatabase,
String defaultSchema,
Map<String,SqlValue> bindings,
DynamicLineageOptions options)
Resolve dynamic-SQL object names by abstractly evaluating a stored procedure
with a set of parameter bindings.
|
| Modifier and Type | Method and Description |
|---|---|
static SqlValue |
SqlValue.nullValue()
An explicit SQL NULL binding.
|
static SqlValue |
SqlValue.of(BigDecimal value)
An exact number, its text kept as written (Mantis 4962):
100000000000000000000 or a DECIMAL with many
digits, which a double would round. |
static SqlValue |
SqlValue.of(boolean value)
A boolean binding, mapped to T-SQL BIT semantics (1/0).
|
static SqlValue |
SqlValue.of(double value)
A floating-point binding.
|
static SqlValue |
SqlValue.of(long value)
An integer binding, e.g.
|
static SqlValue |
SqlValue.of(String value)
A string binding, e.g.
|
static SqlValue |
SqlValue.suppliedUnknown(String reason)
A value a caller passes that nobody knows (Mantis 4962): the parameter is bound, so its declared default does
not apply, but its value is unknown and the evaluation keeps it as a placeholder with
reason. |
| Modifier and Type | Method and Description |
|---|---|
static List<Map<String,SqlValue>> |
DynamicSqlLineageResolver.discoverCallSiteBindings(TCustomSqlStatement procAst,
int maxBindingSets)
Discover parameter bindings from literal call sites of
procAst in the same
parsed file: top-level EXEC <proc> 'literal', @p = 'literal', ... statements
whose (unqualified) module name matches the procedure name. |
static List<Map<String,SqlValue>> |
DynamicSqlLineageResolver.discoverCrossFileCallSiteBindings(TCustomSqlStatement procAst,
RoutineCatalog catalog,
int maxBindingSets)
Discover parameter bindings from literal call sites of
procAst located in
OTHER files of the same multi-file analysis (plan Phase 5: cross-file routine
references). |
List<Map<String,SqlValue>> |
DynamicSqlLineageResolver.CallSiteDiscovery.getBindingSets()
The binding sets, in the order and under the cap of the discovery.
|
static Map<String,SqlValue> |
DynamicSqlLineageResolver.presetBindings(TCustomSqlStatement procAst,
TSQLEnv sqlEnv,
String currentDatabase,
String defaultSchema)
The values preset in
sqlEnv for the parameters of the procedure procAst defines (Mantis 4962),
as bindings, or null when none is set. |