You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openjpa.apache.org by "Mark Struberg (JIRA)" <ji...@apache.org> on 2015/01/12 16:50:34 UTC
[jira] [Created] (OPENJPA-2558) Implement a way to select the db
representation of Boolean values
Mark Struberg created OPENJPA-2558:
--------------------------------------
Summary: Implement a way to select the db representation of Boolean values
Key: OPENJPA-2558
URL: https://issues.apache.org/jira/browse/OPENJPA-2558
Project: OpenJPA
Issue Type: New Feature
Components: jdbc
Affects Versions: 2.3.0
Reporter: Mark Struberg
Assignee: Mark Struberg
Many Databases do not natively support the SQL-99 BOOLEAN datatype. Boolean and boolean fields in JPA entities will thus get represented as another type in the database. OpenJPA currently has a hardcoded mapping to int 1/0 in the base DBDictionary.
But many existing databases don't use NUMBER(1) as column type but e.g. CHAR(1) (because it uses less space in the index).
There are also all sorts of possible representations where one of those is usually consistently used throughout a customer application:
* Native Boolean -> PreparedStatement#setBoolean
* Int 0/1 -> PreparedStatement#setInt
* String "Y"/"N" -> PreparedStatement#setString
* String "T"/"F" -> PreparedStatement#setString
* String "y"/"n" -> PreparedStatement#setString
* String "t"/"f" -> PreparedStatement#setString
And I've also seen translated ones: "J"/"N" in german apps for "Ja"/ "Nein" (yes/no).
So it should be possible to even add your own custom BooleanRepresentation.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)