diff --git a/hibernate-core/src/main/java/org/hibernate/dialect/SybaseASEDialect.java b/hibernate-core/src/main/java/org/hibernate/dialect/SybaseASEDialect.java index 5337206ed0..35159263cd 100644 --- a/hibernate-core/src/main/java/org/hibernate/dialect/SybaseASEDialect.java +++ b/hibernate-core/src/main/java/org/hibernate/dialect/SybaseASEDialect.java @@ -69,6 +69,10 @@ public Size resolveSize( Integer scale, Long length) { switch ( jdbcType.getDdlTypeCode() ) { + case Types.NCLOB: + case Types.CLOB: + case Types.BLOB: + return Size.length( getDefaultLobLength() ); case Types.FLOAT: // Sybase ASE allows FLOAT with a precision up to 48 if ( precision != null ) { @@ -163,6 +167,11 @@ public int getMaxVarcharLength() { return 16_384; } + @Override + public long getDefaultLobLength() { + return Integer.MAX_VALUE; + } + private static boolean isAnsiNull(DialectResolutionInfo info) { final DatabaseMetaData databaseMetaData = info.getDatabaseMetadata(); if ( databaseMetaData != null ) {