Package tilda.generation.bigquery
Class Sql
- java.lang.Object
-
- tilda.db.stores.CommonStoreImpl
-
- tilda.db.stores.BigQuery
-
- tilda.generation.bigquery.Sql
-
- All Implemented Interfaces:
DBType
,CodeGenBase
,CodeGenSql
public class Sql extends BigQuery implements CodeGenSql
-
-
Field Summary
Fields Modifier and Type Field Description protected static org.apache.logging.log4j.Logger
LOG
-
Fields inherited from class tilda.db.stores.BigQuery
_CANCEL_SQL_STATES, _LOCK_CONN_ERROR_SUBSTR, _NODATA_SQL_STATES, _SQL
-
Fields inherited from class tilda.db.stores.CommonStoreImpl
REQUOTE0, REQUOTE1, REQUOTE2
-
-
Constructor Summary
Constructors Constructor Description Sql()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
genClassEnd(java.io.PrintWriter Out, GeneratorSession G)
void
genClassStart(java.io.PrintWriter Out, GeneratorSession G, Object O)
java.lang.String
genCompositeAggregateColumnSQL(ViewColumn VC)
void
genDDL(java.io.PrintWriter Out, Object O)
void
genDDL(java.io.PrintWriter OutFinal, View V)
void
genDDLComments(java.io.PrintWriter OutFinal, View V)
void
genFileStart(java.io.PrintWriter Out, Schema S)
void
genIndex(java.io.PrintWriter Out, Index I)
void
genKeysManagement(java.io.PrintWriter Out, Object O)
java.lang.String
genPivotColumnSQL(ViewColumn VC)
Query
genViewJoin(java.lang.StringBuilder Str, ViewJoin VJ)
java.lang.String
getBaseSelectStatement(java.util.List<Column> Columns)
java.lang.String
getCommaCurentDateTime()
java.lang.String
getCommaCurentTimestamp()
java.lang.String
getDDLMetadataVersion()
java.lang.String
getEqualCurentDateTime()
java.lang.String
getEqualCurentTimestamp()
java.lang.String
getFileName(Base O)
protected void
printAggregateOrderBy(java.lang.StringBuilder str, java.util.List<OrderBy> orderByObjs, java.lang.String objectFullName, java.lang.String range)
protected void
printAggregatePartitionBy(java.lang.StringBuilder str, java.util.List<Column> partitionByObjs, java.lang.String objectFullName)
boolean
PrintColumnList(java.io.PrintWriter Out, java.util.List<Column> Columns)
boolean
PrintColumnList(java.io.PrintWriter Out, java.util.List<Column> Columns, java.lang.String[] LALs)
Prints a comma-separated list of columns, for example for an index or an FK.boolean
stringArrayAggNeedsText(ViewColumn VC)
boolean
stringNeedsTrim(Column C)
-
Methods inherited from class tilda.db.stores.BigQuery
age, alterTableAlterColumnComment, alterTableComment, cancel, fullIdentifierOnUpdate, getAclRolesScript, getAggregateStr, getBackendConnectionId, getColumnQuotingEndChar, getColumnQuotingStartChar, getColumnType, getColumnTypeRaw, getConnectionCancelStates, getConnectionLockMsgs, getConnectionNoDataStates, getCurrentDate, getCurrentDateStr, getCurrentDateTimeStr, getCurrentTimestampStr, getDBStringType, getHelperFunctionsScript, getJsonParametrizedQueryPlaceHolder, getMaxColumnNameSize, getMaxTableNameSize, getName, getSQlCodeGen, getSubTypeMapping, isCaseSentitiveSchemaTableViewNames, isSuperUser, moveTableView, needsSavepoint, renameTableColumn, renameTableView, reorgTable, supportsArrays, supportsFilterClause, supportsFirstLastAggregates, supportsForeignKeys, supportsIndices, supportsPrimaryKeys, supportsReorg, supportsSelectLimit, supportsSelectOffset, supportsSuperMetaDataQueries, within
-
Methods inherited from class tilda.db.stores.CommonStoreImpl
alterTableAddColumn, alterTableAddFK, alterTableAddIndex, alterTableAddIndexDDL, alterTableAlterColumnDefault, alterTableAlterColumnMulti, alterTableAlterColumnNull, alterTableAlterColumnNumericSize, alterTableAlterColumnStringSize, alterTableAlterColumnType, alterTableDropColumn, alterTableDropFK, alterTableDropIndex, alterTableIndexAddCluster, alterTableIndexDropCluster, alterTableRenameIndex, alterTableReplaceTablePK, createKeysEntry, createSchema, createTable, createView, dropView, dropView, getColumnType, getColumnType, getColumnType, getColumnTypeRaw, getColumnTypeRaw, getCurrentDateTime, getCurrentTimestamp, getFullColumnVar, getFullColumnVar, getFullColumnVar, getFullTableVar, getFullTableVar, getFullTableVar, getSelectLimitClause, getShortColumnVar, getShortColumnVar, getTypeMapping, rewriteExpressionColumnQuoting, setArray, setOrderByWithNullsOrdering, truncateTable
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface tilda.db.stores.DBType
age, alterTableAddColumn, alterTableAddFK, alterTableAddIndex, alterTableAddIndexDDL, alterTableAlterColumnComment, alterTableAlterColumnDefault, alterTableAlterColumnMulti, alterTableAlterColumnNull, alterTableAlterColumnNumericSize, alterTableAlterColumnStringSize, alterTableAlterColumnType, alterTableComment, alterTableDropColumn, alterTableDropFK, alterTableDropIndex, alterTableIndexAddCluster, alterTableIndexDropCluster, alterTableRenameIndex, alterTableReplaceTablePK, cancel, createKeysEntry, createSchema, createTable, createView, dropView, dropView, fullIdentifierOnUpdate, getAclRolesScript, getAggregateStr, getBackendConnectionId, getColumnQuotingEndChar, getColumnQuotingStartChar, getColumnType, getColumnType, getColumnType, getColumnTypeRaw, getColumnTypeRaw, getConnectionCancelStates, getConnectionLockMsgs, getConnectionNoDataStates, getCurrentDate, getCurrentDateStr, getCurrentDateTime, getCurrentDateTimeStr, getCurrentTimestamp, getCurrentTimestampStr, getDBStringType, getFullColumnVar, getFullColumnVar, getFullColumnVar, getFullTableVar, getFullTableVar, getFullTableVar, getHelperFunctionsScript, getJsonParametrizedQueryPlaceHolder, getMaxColumnNameSize, getMaxTableNameSize, getName, getSelectLimitClause, getShortColumnVar, getShortColumnVar, getSQlCodeGen, getTypeMapping, isCaseSentitiveSchemaTableViewNames, isSuperUser, moveTableView, needsSavepoint, renameTableColumn, renameTableView, reorgTable, rewriteExpressionColumnQuoting, setArray, setOrderByWithNullsOrdering, supportsArrays, supportsFilterClause, supportsFirstLastAggregates, supportsForeignKeys, supportsIndices, supportsPrimaryKeys, supportsReorg, supportsSelectLimit, supportsSelectOffset, supportsSuperMetaDataQueries, truncateTable, within
-
-
-
-
Method Detail
-
getFileName
public java.lang.String getFileName(Base O)
- Specified by:
getFileName
in interfaceCodeGenBase
- Returns:
-
stringNeedsTrim
public boolean stringNeedsTrim(Column C)
- Specified by:
stringNeedsTrim
in interfaceCodeGenSql
-
stringArrayAggNeedsText
public boolean stringArrayAggNeedsText(ViewColumn VC)
- Specified by:
stringArrayAggNeedsText
in interfaceCodeGenSql
-
getBaseSelectStatement
public java.lang.String getBaseSelectStatement(java.util.List<Column> Columns)
- Specified by:
getBaseSelectStatement
in interfaceCodeGenSql
-
getEqualCurentTimestamp
public java.lang.String getEqualCurentTimestamp()
- Specified by:
getEqualCurentTimestamp
in interfaceCodeGenSql
-
getEqualCurentDateTime
public java.lang.String getEqualCurentDateTime()
- Specified by:
getEqualCurentDateTime
in interfaceCodeGenSql
-
getCommaCurentTimestamp
public java.lang.String getCommaCurentTimestamp()
- Specified by:
getCommaCurentTimestamp
in interfaceCodeGenSql
-
getCommaCurentDateTime
public java.lang.String getCommaCurentDateTime()
- Specified by:
getCommaCurentDateTime
in interfaceCodeGenSql
-
genFileStart
public void genFileStart(java.io.PrintWriter Out, Schema S) throws java.lang.Exception
- Specified by:
genFileStart
in interfaceCodeGenSql
- Throws:
java.lang.Exception
-
genClassStart
public void genClassStart(java.io.PrintWriter Out, GeneratorSession G, Object O) throws java.lang.Exception
- Specified by:
genClassStart
in interfaceCodeGenBase
- Throws:
java.lang.Exception
-
genDDL
public void genDDL(java.io.PrintWriter Out, Object O) throws java.lang.Exception
- Specified by:
genDDL
in interfaceCodeGenSql
- Throws:
java.lang.Exception
-
genViewJoin
public Query genViewJoin(java.lang.StringBuilder Str, ViewJoin VJ) throws java.lang.Exception
- Specified by:
genViewJoin
in interfaceCodeGenSql
- Throws:
java.lang.Exception
-
printAggregateOrderBy
protected void printAggregateOrderBy(java.lang.StringBuilder str, java.util.List<OrderBy> orderByObjs, java.lang.String objectFullName, java.lang.String range)
-
printAggregatePartitionBy
protected void printAggregatePartitionBy(java.lang.StringBuilder str, java.util.List<Column> partitionByObjs, java.lang.String objectFullName)
-
genDDL
public void genDDL(java.io.PrintWriter OutFinal, View V) throws java.lang.Exception
- Specified by:
genDDL
in interfaceCodeGenSql
- Throws:
java.lang.Exception
-
genPivotColumnSQL
public java.lang.String genPivotColumnSQL(ViewColumn VC) throws java.lang.Exception
- Throws:
java.lang.Exception
-
genCompositeAggregateColumnSQL
public java.lang.String genCompositeAggregateColumnSQL(ViewColumn VC)
-
genDDLComments
public void genDDLComments(java.io.PrintWriter OutFinal, View V) throws java.lang.Exception
- Specified by:
genDDLComments
in interfaceCodeGenSql
- Throws:
java.lang.Exception
-
getDDLMetadataVersion
public java.lang.String getDDLMetadataVersion()
- Specified by:
getDDLMetadataVersion
in interfaceCodeGenSql
-
genIndex
public void genIndex(java.io.PrintWriter Out, Index I) throws java.lang.Exception
- Specified by:
genIndex
in interfaceCodeGenSql
- Throws:
java.lang.Exception
-
genKeysManagement
public void genKeysManagement(java.io.PrintWriter Out, Object O)
- Specified by:
genKeysManagement
in interfaceCodeGenSql
-
PrintColumnList
public boolean PrintColumnList(java.io.PrintWriter Out, java.util.List<Column> Columns)
-
PrintColumnList
public boolean PrintColumnList(java.io.PrintWriter Out, java.util.List<Column> Columns, java.lang.String[] LALs)
Prints a comma-separated list of columns, for example for an index or an FK.- Parameters:
Out
- the output streamColumns
- the list of columns to print (must not be null)LALs
- For indices, the list of columns marked as LAL-enabled (Left-Anchor-Like for efficient search such as like 'abc%').- Returns:
-
genClassEnd
public void genClassEnd(java.io.PrintWriter Out, GeneratorSession G) throws java.lang.Exception
- Specified by:
genClassEnd
in interfaceCodeGenBase
- Throws:
java.lang.Exception
-
-