Skip to content

Instantly share code, notes, and snippets.

@loinguyenduc101
Created January 29, 2016 08:55
Show Gist options
  • Save loinguyenduc101/b7e338a2932be1484555 to your computer and use it in GitHub Desktop.
Save loinguyenduc101/b7e338a2932be1484555 to your computer and use it in GitHub Desktop.
SQLServerUnicodeDialect 2008 tested
// http://stackoverflow.com/questions/30627583/hibernate-with-sql-server-fail-for-nvarchar-field-with-no-dialect-mapping
public class SQLServerUnicodeDialect extends org.hibernate.dialect.SQLServerDialect {
public SQLServerUnicodeDialect() {
super();
registerColumnType(Types.CHAR, "nchar(1)");
registerColumnType(Types.LONGVARCHAR, "nvarchar(max)" );
registerColumnType(Types.VARCHAR, 4000, "nvarchar($l)");
registerColumnType(Types.VARCHAR, "nvarchar(max)");
registerColumnType(Types.CLOB, "nvarchar(max)" );
registerColumnType(Types.NCHAR, "nchar(1)");
registerColumnType(Types.LONGNVARCHAR, "nvarchar(max)");
registerColumnType(Types.NVARCHAR, 4000, "nvarchar($l)");
registerColumnType(Types.NVARCHAR, "nvarchar(max)");
registerColumnType(Types.NCLOB, "nvarchar(max)");
registerHibernateType(Types.NCHAR, StandardBasicTypes.CHARACTER.getName());
registerHibernateType(Types.LONGNVARCHAR, StandardBasicTypes.TEXT.getName());
registerHibernateType(Types.NVARCHAR, StandardBasicTypes.STRING.getName());
registerHibernateType(Types.NCLOB, StandardBasicTypes.CLOB.getName() );
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment