public final class DDLGeneratorWorker extends AbstractPatternWorker
The generated DDL is quite FWD-specific, the following particular-case processing are performed:
id
unique column is injected;id
column at the end if they
are not already unique. As special case, for the SQL Server, we are forced to add
it to all indexes. See inline comment;datetime-tz
ABL fields are generated with multiple (double) column. The
supplementary integer column was added to compensate a PostgreSQL issue and is added
in all cases in order to have a uniform management for this datatype;Modifier and Type | Class and Description |
---|---|
class |
DDLGeneratorWorker.Helper
The class that exposes its public methods as worker interface in TRPL.
|
private static class |
DDLGeneratorWorker.Sequence
Dialect-independent data structure class for SQL sequences.
|
private static class |
DDLGeneratorWorker.Table
Dialect-independent data structure class for SQL tables.
|
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
DTZ_OFFSET
The datetime-tz suffix for offset filed.
|
static P2JField |
ID
This represents the surrogate
id column, added to each SQL record. |
static java.lang.String |
INDENT
Fixed size space used to make the output pretty.
|
static P2JField |
list__index
This column represents the index of the extent value.
|
private static java.util.logging.Logger |
log
Logger
|
private static java.util.List<java.lang.String> |
MY_CONNECTION_AUX
Auxiliary database objects for _MyConnection VST
|
static P2JField |
PARENT
'parent' field of the word table
|
static P2JField |
parent__id
This column is used as foreign key in a normalized composite table.
|
private static java.lang.String |
PK
Name of the primary key column.
|
static P2JField |
WORD
'word' field of the word table
|
Constructor and Description |
---|
DDLGeneratorWorker()
The constructor configures the supporting library with exported functionality.
|
Modifier and Type | Method and Description |
---|---|
private java.lang.String |
getSchemaName(java.lang.String dbName)
Get the schema name based on database name.
|
finish, getCopy, getLibrary, getResolver, getSource, initialize, isConditionalRuleSets, isFlagActivated, isRuntimeQueryMode, registerTree, resolveConstant, setLibrary, visitAst
private static final java.util.logging.Logger log
private static final java.lang.String PK
private static final java.util.List<java.lang.String> MY_CONNECTION_AUX
public static final P2JField ID
id
column, added to each SQL record.public static final P2JField PARENT
public static final P2JField WORD
public static final P2JField parent__id
public static final P2JField list__index
public static final java.lang.String DTZ_OFFSET
offset
public static final java.lang.String INDENT