Package tilda.db.stores
Class BigQuery
- java.lang.Object
-
- tilda.db.stores.CommonStoreImpl
-
- tilda.db.stores.BigQuery
-
- All Implemented Interfaces:
DBType
- Direct Known Subclasses:
Sql
public class BigQuery extends CommonStoreImpl
-
-
Field Summary
Fields Modifier and Type Field Description protected static java.lang.String[]
_CANCEL_SQL_STATES
BigQuery Cancellation codes, from https://www.postgresql.org/docs/11/errcodes-appendix.htmlprotected static java.lang.String[]
_LOCK_CONN_ERROR_SUBSTR
protected static java.lang.String[]
_NODATA_SQL_STATES
protected static Sql
_SQL
-
Fields inherited from class tilda.db.stores.CommonStoreImpl
REQUOTE0, REQUOTE1, REQUOTE2
-
-
Constructor Summary
Constructors Constructor Description BigQuery()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
age(Connection C, java.lang.StringBuilder Str, Type_DatetimePrimitive ColStart, Type_DatetimePrimitive ColEnd, DurationUtil.IntervalEnum Type, int Count, java.lang.String Operator)
boolean
alterTableAlterColumnComment(Connection con, Column col)
boolean
alterTableComment(Connection con, Object obj)
void
cancel(Connection C)
boolean
fullIdentifierOnUpdate()
java.lang.String
getAclRolesScript(Connection Con, java.util.List<Schema> TildaList)
java.lang.String
getAggregateStr(AggregateType AT)
java.lang.String
getBackendConnectionId(Connection connection)
char
getColumnQuotingEndChar()
char
getColumnQuotingStartChar()
java.lang.String
getColumnType(ColumnType Type, java.lang.Integer Size, ColumnMode M, boolean isCollection, java.lang.Integer Precision, java.lang.Integer Scale)
java.lang.String
getColumnTypeRaw(ColumnType Type, int Size, boolean Calculated, boolean isCollection, boolean MultiOverride)
java.lang.String[]
getConnectionCancelStates()
java.lang.String[]
getConnectionLockMsgs()
java.lang.String[]
getConnectionNoDataStates()
java.time.LocalDate
getCurrentDate(Connection Con)
java.lang.String
getCurrentDateStr()
java.lang.String
getCurrentDateTimeStr()
java.lang.String
getCurrentTimestampStr()
DBStringType
getDBStringType(int Size)
java.lang.String
getHelperFunctionsScript(Connection Con, boolean Start)
java.lang.String
getJsonParametrizedQueryPlaceHolder()
int
getMaxColumnNameSize()
int
getMaxTableNameSize()
java.lang.String
getName()
CodeGenSql
getSQlCodeGen()
protected ColumnType
getSubTypeMapping(java.lang.String Name, java.lang.String TypeName, ColumnType TildaType)
boolean
isCaseSentitiveSchemaTableViewNames()
boolean
isSuperUser(Connection C)
boolean
moveTableView(Connection Con, Base base, java.lang.String oldSchemaName)
boolean
needsSavepoint()
boolean
renameTableColumn(Connection con, Column col, java.lang.String oldName)
boolean
renameTableView(Connection Con, Base base, java.lang.String oldName)
boolean
reorgTable(Connection con, java.lang.String schemaName, java.lang.String tableName, java.lang.String clusterIndexName, boolean verbose, boolean full)
boolean
supportsArrays()
boolean
supportsFilterClause()
boolean
supportsFirstLastAggregates()
boolean
supportsForeignKeys()
boolean
supportsIndices()
boolean
supportsPrimaryKeys()
boolean
supportsReorg()
boolean
supportsSelectLimit()
boolean
supportsSelectOffset()
boolean
supportsSuperMetaDataQueries()
void
within(Connection C, java.lang.StringBuilder Str, Type_DatetimePrimitive Col, Type_DatetimePrimitive ColStart, long DurationCount, DurationUtil.IntervalEnum DurationType)
-
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
-
-
-
-
Field Detail
-
_NODATA_SQL_STATES
protected static final java.lang.String[] _NODATA_SQL_STATES
-
_LOCK_CONN_ERROR_SUBSTR
protected static final java.lang.String[] _LOCK_CONN_ERROR_SUBSTR
-
_CANCEL_SQL_STATES
protected static final java.lang.String[] _CANCEL_SQL_STATES
BigQuery Cancellation codes, from https://www.postgresql.org/docs/11/errcodes-appendix.html- xxxxx: xxxxxxxxxxxxx.
- 57000: operator_intervention.
- 57014: query_canceled.
- 57P01: admin_shutdown.
- 57P02: crash_shutdown.
- 57P03: cannot_connect_now.
- 57P04: database_dropped.
-
_SQL
protected static Sql _SQL
-
-
Method Detail
-
getName
public java.lang.String getName()
-
getCurrentTimestampStr
public java.lang.String getCurrentTimestampStr()
- Returns:
- The string denoting the current timestamp with timezone statement, e.g., "statement_timestamp()" for Postgres, or "CURRENT_TIMESTAMP" for bigquery.
-
getCurrentDateTimeStr
public java.lang.String getCurrentDateTimeStr()
- Returns:
- The string denoting the current timestamp without timezone statement, "statement_timestamp()::timestamp" for Postgres, or "CURRENT_DATETIME" for bigquery.
-
getCurrentDateStr
public java.lang.String getCurrentDateStr()
-
getConnectionNoDataStates
public java.lang.String[] getConnectionNoDataStates()
-
getConnectionLockMsgs
public java.lang.String[] getConnectionLockMsgs()
-
getConnectionCancelStates
public java.lang.String[] getConnectionCancelStates()
-
needsSavepoint
public boolean needsSavepoint()
-
supportsSelectLimit
public boolean supportsSelectLimit()
-
supportsSelectOffset
public boolean supportsSelectOffset()
-
supportsFilterClause
public boolean supportsFilterClause()
-
supportsFirstLastAggregates
public boolean supportsFirstLastAggregates()
-
supportsArrays
public boolean supportsArrays()
-
supportsPrimaryKeys
public boolean supportsPrimaryKeys()
-
supportsForeignKeys
public boolean supportsForeignKeys()
-
supportsIndices
public boolean supportsIndices()
-
getColumnQuotingStartChar
public char getColumnQuotingStartChar()
-
getColumnQuotingEndChar
public char getColumnQuotingEndChar()
-
getAggregateStr
public java.lang.String getAggregateStr(AggregateType AT)
-
fullIdentifierOnUpdate
public boolean fullIdentifierOnUpdate()
-
getSQlCodeGen
public CodeGenSql getSQlCodeGen()
-
getDBStringType
public DBStringType getDBStringType(int Size)
-
getColumnType
public java.lang.String getColumnType(ColumnType Type, java.lang.Integer Size, ColumnMode M, boolean isCollection, java.lang.Integer Precision, java.lang.Integer Scale)
- Specified by:
getColumnType
in classCommonStoreImpl
-
getColumnTypeRaw
public java.lang.String getColumnTypeRaw(ColumnType Type, int Size, boolean Calculated, boolean isCollection, boolean MultiOverride)
- Specified by:
getColumnTypeRaw
in classCommonStoreImpl
-
getHelperFunctionsScript
public java.lang.String getHelperFunctionsScript(Connection Con, boolean Start) throws java.lang.Exception
- Throws:
java.lang.Exception
-
getAclRolesScript
public java.lang.String getAclRolesScript(Connection Con, java.util.List<Schema> TildaList) throws java.lang.Exception
- Throws:
java.lang.Exception
-
getSubTypeMapping
protected ColumnType getSubTypeMapping(java.lang.String Name, java.lang.String TypeName, ColumnType TildaType) throws java.lang.Exception
- Specified by:
getSubTypeMapping
in classCommonStoreImpl
- Throws:
java.lang.Exception
-
getJsonParametrizedQueryPlaceHolder
public java.lang.String getJsonParametrizedQueryPlaceHolder()
-
age
public void age(Connection C, java.lang.StringBuilder Str, Type_DatetimePrimitive ColStart, Type_DatetimePrimitive ColEnd, DurationUtil.IntervalEnum Type, int Count, java.lang.String Operator)
-
alterTableComment
public boolean alterTableComment(Connection con, Object obj) throws java.lang.Exception
- Throws:
java.lang.Exception
-
alterTableAlterColumnComment
public boolean alterTableAlterColumnComment(Connection con, Column col) throws java.lang.Exception
- Throws:
java.lang.Exception
-
within
public void within(Connection C, java.lang.StringBuilder Str, Type_DatetimePrimitive Col, Type_DatetimePrimitive ColStart, long DurationCount, DurationUtil.IntervalEnum DurationType)
-
isSuperUser
public boolean isSuperUser(Connection C) throws java.lang.Exception
- Throws:
java.lang.Exception
-
cancel
public void cancel(Connection C) throws java.sql.SQLException
- Throws:
java.sql.SQLException
-
getMaxColumnNameSize
public int getMaxColumnNameSize()
-
getMaxTableNameSize
public int getMaxTableNameSize()
-
getBackendConnectionId
public java.lang.String getBackendConnectionId(Connection connection) throws java.lang.Exception
- Throws:
java.lang.Exception
-
moveTableView
public boolean moveTableView(Connection Con, Base base, java.lang.String oldSchemaName) throws java.lang.Exception
- Specified by:
moveTableView
in interfaceDBType
- Overrides:
moveTableView
in classCommonStoreImpl
- Throws:
java.lang.Exception
-
renameTableView
public boolean renameTableView(Connection Con, Base base, java.lang.String oldName) throws java.lang.Exception
- Specified by:
renameTableView
in interfaceDBType
- Overrides:
renameTableView
in classCommonStoreImpl
- Throws:
java.lang.Exception
-
renameTableColumn
public boolean renameTableColumn(Connection con, Column col, java.lang.String oldName) throws java.lang.Exception
- Specified by:
renameTableColumn
in interfaceDBType
- Overrides:
renameTableColumn
in classCommonStoreImpl
- Throws:
java.lang.Exception
-
getCurrentDate
public java.time.LocalDate getCurrentDate(Connection Con) throws java.lang.Exception
- Specified by:
getCurrentDate
in interfaceDBType
- Overrides:
getCurrentDate
in classCommonStoreImpl
- Throws:
java.lang.Exception
-
supportsSuperMetaDataQueries
public boolean supportsSuperMetaDataQueries()
-
supportsReorg
public boolean supportsReorg()
-
reorgTable
public boolean reorgTable(Connection con, java.lang.String schemaName, java.lang.String tableName, java.lang.String clusterIndexName, boolean verbose, boolean full) throws java.lang.Exception
- Throws:
java.lang.Exception
-
isCaseSentitiveSchemaTableViewNames
public boolean isCaseSentitiveSchemaTableViewNames()
-
-