См. http://www.errcode.net/blogs/?p=6, чтобы определить кодировку вашей базы данных. В настоящее время я использую Oracle с Hibernate в UTF-8 без дополнительных настроек.
Также вы можете проверить, правильно ли закодированы входные значения. Например, если у вас есть веб-приложение, проверьте кодировку параметров запроса (или установите ее с помощью request.setCharacterEncoding("utf-8")
)