Class HanaSqlDialect
java.lang.Object
org.eclipse.dirigible.database.sql.dialects.DefaultSqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>
org.eclipse.dirigible.database.sql.dialects.hana.HanaSqlDialect
- All Implemented Interfaces:
DatabaseArtifactTypes,ISqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>,ISqlFactory<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>,ISqlKeywords
public class HanaSqlDialect extends DefaultSqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder> implements DatabaseArtifactTypes
The HANA SQL Dialect.
-
Field Summary
Fields inherited from interface org.eclipse.dirigible.database.sql.DatabaseArtifactTypes
FUNCTION, PROCEDURE, SEQUENCE, SYNONYM, TABLE, VIEWFields inherited from interface org.eclipse.dirigible.database.sql.ISqlKeywords
ALTER, CLOSE, COMMA, EQUALS, FUNCTION_CURRENT_DATE, FUNCTION_CURRENT_TIME, FUNCTION_CURRENT_TIMESTAMP, KEYWORD_ADD, KEYWORD_ALTER, KEYWORD_AND, KEYWORD_AS, KEYWORD_ASC, KEYWORD_CHECK, KEYWORD_COLUMN, KEYWORD_CONSTRAINT, KEYWORD_CREATE, KEYWORD_DATABASE_DROP_RESTRICT, KEYWORD_DELETE, KEYWORD_DESC, KEYWORD_DISTINCT, KEYWORD_DROP, KEYWORD_FETCH, KEYWORD_FOR, KEYWORD_FOR_UPDATE, KEYWORD_FOREIGN, KEYWORD_FROM, KEYWORD_FULL, KEYWORD_GROUP_BY, KEYWORD_HAVING, KEYWORD_IDENTITY, KEYWORD_INDEX, KEYWORD_INNER, KEYWORD_INSERT, KEYWORD_INTO, KEYWORD_JOIN, KEYWORD_KEY, KEYWORD_LEFT, KEYWORD_LIMIT, KEYWORD_NEXT, KEYWORD_NEXT_VALUE_FOR, KEYWORD_NOT, KEYWORD_NULL, KEYWORD_OFFSET, KEYWORD_ON, KEYWORD_ONLY, KEYWORD_OR, KEYWORD_ORDER_BY, KEYWORD_OUTER, KEYWORD_PRIMARY, KEYWORD_PUBLIC, KEYWORD_REFERENCES, KEYWORD_RIGHT, KEYWORD_ROWS, KEYWORD_SELECT, KEYWORD_SEQUENCE, KEYWORD_SEQUENCE_CYCLE, KEYWORD_SEQUENCE_EMPTY_STRING_FOR_BOOLEAN_TYPES, KEYWORD_SEQUENCE_INCREMENT_BY, KEYWORD_SEQUENCE_MAXVALUE, KEYWORD_SEQUENCE_MINVALUE, KEYWORD_SEQUENCE_NO_MAXVALUE, KEYWORD_SEQUENCE_NO_MINVALUE, KEYWORD_SEQUENCE_RESET_BY, KEYWORD_SEQUENCE_RESTART_WITH, KEYWORD_SEQUENCE_START_WITH, KEYWORD_SET, KEYWORD_START, KEYWORD_SYNONYM, KEYWORD_TABLE, KEYWORD_UNION, KEYWORD_UNIQUE, KEYWORD_UPDATE, KEYWORD_VALUES, KEYWORD_VIEW, KEYWORD_WHERE, KEYWORD_WITH, METADATA_ALIAS, METADATA_CALC_VIEW, METADATA_GLOBAL_TEMPORARY, METADATA_LOCAL_TEMPORARY, METADATA_SYNONYM, METADATA_SYSTEM_TABLE, METADATA_TABLE, METADATA_TABLE_TYPES, METADATA_VIEW, OPEN, QUESTION, SPACE, STAR, TABLE, UNDERSCROE -
Constructor Summary
Constructors Constructor Description HanaSqlDialect() -
Method Summary
Modifier and Type Method Description HanaCreateBranchingBuildercreate()Creates the.HanaDropBranchingBuilderdrop()Drop.booleanexists(Connection connection, String table)Check existence of a table.booleanexists(Connection connection, String artefact, int type)Check existence of an artifacts.Set<String>getFunctionsNames()Returns the function namesStringgetIdentityArgument()Identity argument for a column for the create table script Default is "IDENTITY".StringgetSchemaFilterScript()If the database supports schema filtering SQL statements (seeISqlDialect.isSchemaFilterSupported()), this method provides the corresponding SQL statement.booleanisSchemaFilterSupported()Checks if the database is capable of schema-level filtering statements (e.g.HanaLastValueIdentityBuilderlastval(String... args)Lastval.HanaNextValueSequenceBuildernextval(String sequence)Nextval.Methods inherited from class org.eclipse.dirigible.database.sql.dialects.DefaultSqlDialect
alter, count, delete, expression, functionCurrentDate, functionCurrentTime, functionCurrentTimestamp, getDatabaseName, getDataTypeName, getNotNullArgument, getPrimaryKeyArgument, getUniqueArgument, insert, isCatalogForSchema, isSequenceSupported, isSynonymSupported, normalizeTableName, select, update
-
Field Details
-
Constructor Details
-
HanaSqlDialect
public HanaSqlDialect()
-
-
Method Details
-
nextval
Description copied from interface:ISqlFactoryNextval.- Specified by:
nextvalin interfaceISqlFactory<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Overrides:
nextvalin classDefaultSqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Parameters:
sequence- the sequence- Returns:
- the next
-
create
Description copied from interface:ISqlFactoryCreates the.- Specified by:
createin interfaceISqlFactory<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Overrides:
createin classDefaultSqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Returns:
- the creates the
-
drop
Description copied from interface:ISqlFactoryDrop.- Specified by:
dropin interfaceISqlFactory<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Overrides:
dropin classDefaultSqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Returns:
- the drop
-
getIdentityArgument
Description copied from interface:ISqlDialectIdentity argument for a column for the create table script Default is "IDENTITY".- Specified by:
getIdentityArgumentin interfaceISqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Overrides:
getIdentityArgumentin classDefaultSqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Returns:
- the primary key argument
-
lastval
Description copied from interface:ISqlFactoryLastval.- Specified by:
lastvalin interfaceISqlFactory<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Overrides:
lastvalin classDefaultSqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Parameters:
args- the arguments- Returns:
- the last
-
exists
Description copied from interface:ISqlDialectCheck existence of a table.- Specified by:
existsin interfaceISqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Specified by:
existsin interfaceISqlFactory<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Overrides:
existsin classDefaultSqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Parameters:
connection- the current connectiontable- the table name- Returns:
- true if the table exists and false otherwise
- Throws:
SQLException- the SQL exception
-
exists
Description copied from interface:ISqlDialectCheck existence of an artifacts.- Specified by:
existsin interfaceISqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Specified by:
existsin interfaceISqlFactory<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Overrides:
existsin classDefaultSqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Parameters:
connection- the current connectionartefact- the artifact nametype- the artifact type- Returns:
- true if the table exists and false otherwise
- Throws:
SQLException- the SQL exception
-
isSchemaFilterSupported
public boolean isSchemaFilterSupported()Description copied from interface:ISqlDialectChecks if the database is capable of schema-level filtering statements (e.g. to reduce the provisioned schemas down to those that the current user is entitled to see).- Specified by:
isSchemaFilterSupportedin interfaceISqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Overrides:
isSchemaFilterSupportedin classDefaultSqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Returns:
- true if the feature is supported , false otherwise
-
getSchemaFilterScript
Description copied from interface:ISqlDialectIf the database supports schema filtering SQL statements (seeISqlDialect.isSchemaFilterSupported()), this method provides the corresponding SQL statement.- Specified by:
getSchemaFilterScriptin interfaceISqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Overrides:
getSchemaFilterScriptin classDefaultSqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Returns:
- a filtering SQL statement
-
getFunctionsNames
Description copied from interface:ISqlDialectReturns the function names- Specified by:
getFunctionsNamesin interfaceISqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Overrides:
getFunctionsNamesin classDefaultSqlDialect<SelectBuilder,InsertBuilder,UpdateBuilder,DeleteBuilder,HanaCreateBranchingBuilder,AlterBranchingBuilder,HanaDropBranchingBuilder,HanaNextValueSequenceBuilder,HanaLastValueIdentityBuilder>- Returns:
- the list of functions names
-