Package org.jumpmind.symmetric.db.mssql
Class MsSqlSymmetricDialect
java.lang.Object
org.jumpmind.symmetric.db.AbstractSymmetricDialect
org.jumpmind.symmetric.db.mssql.MsSqlSymmetricDialect
- All Implemented Interfaces:
ISymmetricDialect
- Direct Known Subclasses:
MsSql2000SymmetricDialect,MsSql2008SymmetricDialect
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected intprotected static final Stringprotected static final Stringprotected BooleanFields inherited from class org.jumpmind.symmetric.db.AbstractSymmetricDialect
databaseMajorVersion, databaseMinorVersion, databaseName, databaseProductVersion, driverName, driverVersion, extensionService, isSpatialTypesEnabled, log, MAX_SYMMETRIC_SUPPORTED_TRIGGER_SIZE, parameterService, platform, sqlKeywords, sqlReplacementTokens, supportsDdlTriggers, supportsGetGeneratedKeys, supportsSubselectsInDelete, supportsSubselectsInUpdate, supportsTransactionViews, tablePrefixLowerCase, targetDialect, triggerTemplate -
Constructor Summary
ConstructorsConstructorDescriptionMsSqlSymmetricDialect(IParameterService parameterService, IDatabasePlatform platform) -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanvoidprotected voidprotected voidbooleancreateOrAlterTablesIfNecessary(String... tableNames) voidprotected voidvoiddisableSyncTriggers(ISqlTransaction transaction, String nodeId) protected booleandoesTriggerExistOnPlatform(String catalogName, String schema, String tableName, String triggerName) protected voidprotected voidvoidprotected voidvoidenableSyncTriggers(ISqlTransaction transaction) longgetCurrentSequenceValue(SequenceIdentifier identifier) protected StringgetTransactionTriggerExpression(String defaultCatalog, String defaultSchema, Trigger trigger) booleanbooleanprotected voidpostCreateTrigger(ISqlTransaction transaction, StringBuilder sqlBuffer, DataEventType dml, Trigger trigger, TriggerHistory hist, Channel channel, String tablePrefix, Table table) voidremoveDdlTrigger(StringBuilder sqlBuffer, String catalogName, String schemaName, String triggerName) voidremoveTrigger(StringBuilder sqlBuffer, String catalogName, String schemaName, String triggerName, String tableName, ISqlTransaction transaction) protected voidsetColumnToNtext(Column column) protected voidsetColumnToVarChar(Column column, boolean forceNtype) protected booleanbooleanprotected StringswitchCatalogForTriggerInstall(String catalog, ISqlTransaction transaction) voidMethods inherited from class org.jumpmind.symmetric.db.AbstractSymmetricDialect
areDatabaseTransactionsPendingSince, buildSqlReplacementTokens, canGapsOccurInCapturedDataIds, cleanupTriggers, close, createCsvDataSql, createCsvPrimaryKeySql, createDdlTrigger, createInitialLoadSqlFor, createPostDdlTriggerDDL, createPostTriggerDDL, createPurgeSqlFor, createPurgeSqlFor, createPurgeSqlFor, createPurgeSqlForMultipleTables, createTrigger, createTrigger, disableSyncTriggers, doesDdlTriggerExist, doesTriggerExist, dropTablesAndDatabaseObjects, escapesTemplatesForDatabaseInserts, getColumnPositionUsingTemplate, getCreateSymmetricDDL, getDatabaseTime, getDatabaseTimeSQL, getDataHasChangedCondition, getDriverName, getDriverVersion, getDropTriggerSql, getEarliestTransactionStartTime, getEngineName, getInitialLoadTableAlias, getInitialLoadTwoPassLobLengthSql, getInitialLoadTwoPassLobSql, getMajorVersion, getMasterCollation, getMaxTriggerNameLength, getMinorVersion, getName, getParameterService, getPlatform, getProductVersion, getSequenceKeyName, getSequenceName, getSourceNodeExpression, getSqlKeywords, getSqlReplacementTokens, getSqlTypeForIds, getSymmetricDdlChanges, getTablePrefix, getTargetDialect, getTargetDialect, getTargetPlatform, getTargetPlatform, getTemplateNumberPrecisionSpec, getTriggerTemplate, getVersion, initTablesAndDatabaseObjects, insertWithGeneratedKey, insertWithGeneratedKey, install, installed, isBlobSyncSupported, isClobSyncSupported, isInitialLoadTwoPassLob, logSql, massageDataExtractionSql, massageForLob, merge, orderColumns, postCreateDdlTrigger, prefixConfigDatabase, preProcessTriggerSqlClause, readDatabaseFromXml, readSymmetricSchemaFromDatabase, removeTrigger, replaceTokens, requiresAutoCommitFalseToSetFetchSize, setExtensionService, setTargetDialect, supportsBatchUpdates, supportsDdlTriggers, supportsOpenCursorsAcrossCommit, supportsSubselectsInDelete, supportsSubselectsInUpdate, supportsTransactionViews, truncateTable, uninstallMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.jumpmind.symmetric.db.ISymmetricDialect
areDatabaseTransactionsPendingSince, canGapsOccurInCapturedDataIds, cleanupTriggers, createCsvDataSql, createCsvPrimaryKeySql, createDdlTrigger, createInitialLoadSqlFor, createPurgeSqlFor, createPurgeSqlFor, createPurgeSqlFor, createPurgeSqlForMultipleTables, createTrigger, createTrigger, disableSyncTriggers, doesDdlTriggerExist, doesTriggerExist, dropTablesAndDatabaseObjects, escapesTemplatesForDatabaseInserts, getColumnPositionUsingTemplate, getCreateSymmetricDDL, getDatabaseTime, getDatabaseTimeSQL, getDataHasChangedCondition, getDriverName, getDriverVersion, getEarliestTransactionStartTime, getEngineName, getInitialLoadTableAlias, getInitialLoadTwoPassLobSql, getMajorVersion, getMasterCollation, getMaxTriggerNameLength, getMinorVersion, getName, getParameterService, getPlatform, getProductVersion, getSequenceKeyName, getSequenceName, getSourceNodeExpression, getSqlKeywords, getSqlReplacementTokens, getSqlTypeForIds, getSymmetricDdlChanges, getTablePrefix, getTargetDialect, getTargetDialect, getTargetPlatform, getTargetPlatform, getTemplateNumberPrecisionSpec, getTriggerTemplate, getVersion, initTablesAndDatabaseObjects, insertWithGeneratedKey, insertWithGeneratedKey, isBlobSyncSupported, isClobSyncSupported, isInitialLoadTwoPassLob, massageDataExtractionSql, massageForLob, orderColumns, preProcessTriggerSqlClause, removeTrigger, setExtensionService, setTargetDialect, supportsBatchUpdates, supportsDdlTriggers, supportsOpenCursorsAcrossCommit, supportsSubselectsInDelete, supportsSubselectsInUpdate, supportsTransactionViews, truncateTable
-
Field Details
-
SQL_DROP_FUNCTION
- See Also:
-
SQL_FUNCTION_INSTALLED
- See Also:
-
supportsDisableTriggers
-
noCount
protected int noCount
-
-
Constructor Details
-
MsSqlSymmetricDialect
-
-
Method Details
-
readSymmetricSchemaFromXml
- Specified by:
readSymmetricSchemaFromXmlin interfaceISymmetricDialect- Overrides:
readSymmetricSchemaFromXmlin classAbstractSymmetricDialect
-
setColumnToNtext
-
setColumnToVarChar
-
createOrAlterTablesIfNecessary
- Specified by:
createOrAlterTablesIfNecessaryin interfaceISymmetricDialect- Overrides:
createOrAlterTablesIfNecessaryin classAbstractSymmetricDialect
-
alterLockEscalation
protected boolean alterLockEscalation() -
verifyDatabaseIsCompatible
public void verifyDatabaseIsCompatible()- Specified by:
verifyDatabaseIsCompatiblein interfaceISymmetricDialect- Overrides:
verifyDatabaseIsCompatiblein classAbstractSymmetricDialect
-
createRequiredDatabaseObjects
public void createRequiredDatabaseObjects()- Specified by:
createRequiredDatabaseObjectsin interfaceISymmetricDialect- Specified by:
createRequiredDatabaseObjectsin classAbstractSymmetricDialect
-
createBase64EncodeFunction
protected void createBase64EncodeFunction() -
createTriggersDisabledFunction
protected void createTriggersDisabledFunction() -
createNodeDisabledFunction
protected void createNodeDisabledFunction() -
dropRequiredDatabaseObjects
public void dropRequiredDatabaseObjects()- Specified by:
dropRequiredDatabaseObjectsin interfaceISymmetricDialect- Specified by:
dropRequiredDatabaseObjectsin classAbstractSymmetricDialect
-
dropBase64EncodeFunction
protected void dropBase64EncodeFunction() -
dropTriggersDisabledFunction
protected void dropTriggersDisabledFunction() -
dropNodeDisabledFunction
protected void dropNodeDisabledFunction() -
supportsDisableTriggers
protected boolean supportsDisableTriggers() -
removeTrigger
public void removeTrigger(StringBuilder sqlBuffer, String catalogName, String schemaName, String triggerName, String tableName, ISqlTransaction transaction) - Specified by:
removeTriggerin interfaceISymmetricDialect- Overrides:
removeTriggerin classAbstractSymmetricDialect
-
switchCatalogForTriggerInstall
- Overrides:
switchCatalogForTriggerInstallin classAbstractSymmetricDialect
-
postCreateTrigger
protected void postCreateTrigger(ISqlTransaction transaction, StringBuilder sqlBuffer, DataEventType dml, Trigger trigger, TriggerHistory hist, Channel channel, String tablePrefix, Table table) - Overrides:
postCreateTriggerin classAbstractSymmetricDialect
-
getBinaryEncoding
- Specified by:
getBinaryEncodingin interfaceISymmetricDialect- Specified by:
getBinaryEncodingin classAbstractSymmetricDialect
-
doesTriggerExistOnPlatform
protected boolean doesTriggerExistOnPlatform(String catalogName, String schema, String tableName, String triggerName) - Specified by:
doesTriggerExistOnPlatformin classAbstractSymmetricDialect
-
removeDdlTrigger
public void removeDdlTrigger(StringBuilder sqlBuffer, String catalogName, String schemaName, String triggerName) - Specified by:
removeDdlTriggerin interfaceISymmetricDialect- Overrides:
removeDdlTriggerin classAbstractSymmetricDialect
-
disableSyncTriggers
- Specified by:
disableSyncTriggersin interfaceISymmetricDialect
-
enableSyncTriggers
- Specified by:
enableSyncTriggersin interfaceISymmetricDialect
-
getSyncTriggersExpression
- Specified by:
getSyncTriggersExpressionin interfaceISymmetricDialect
-
getSyncTriggersOnIncomingExpression
- Specified by:
getSyncTriggersOnIncomingExpressionin interfaceISymmetricDialect- Overrides:
getSyncTriggersOnIncomingExpressionin classAbstractSymmetricDialect
-
getTransactionTriggerExpression
public String getTransactionTriggerExpression(String defaultCatalog, String defaultSchema, Trigger trigger) - Specified by:
getTransactionTriggerExpressionin interfaceISymmetricDialect- Overrides:
getTransactionTriggerExpressionin classAbstractSymmetricDialect
-
supportsTransactionId
public boolean supportsTransactionId()- Specified by:
supportsTransactionIdin interfaceISymmetricDialect- Overrides:
supportsTransactionIdin classAbstractSymmetricDialect
-
isTransactionIdOverrideSupported
public boolean isTransactionIdOverrideSupported()- Specified by:
isTransactionIdOverrideSupportedin interfaceISymmetricDialect- Overrides:
isTransactionIdOverrideSupportedin classAbstractSymmetricDialect
-
cleanDatabase
public void cleanDatabase()- Specified by:
cleanDatabasein interfaceISymmetricDialect
-
needsToSelectLobData
public boolean needsToSelectLobData()- Specified by:
needsToSelectLobDatain interfaceISymmetricDialect- Overrides:
needsToSelectLobDatain classAbstractSymmetricDialect
-
getDbSpecificDataHasChangedCondition
- Overrides:
getDbSpecificDataHasChangedConditionin classAbstractSymmetricDialect
-
getCurrentSequenceValue
- Specified by:
getCurrentSequenceValuein interfaceISymmetricDialect- Overrides:
getCurrentSequenceValuein classAbstractSymmetricDialect
-
getSymTablePermissions
- Specified by:
getSymTablePermissionsin interfaceISymmetricDialect- Overrides:
getSymTablePermissionsin classAbstractSymmetricDialect
-