Tipo de bytearray compatible para Postgres, MySQL, HSQL
Tengo una columna que se ve así:
@Column(name = “somedata”, columnDefinition = “bytea”)
@Size(min = 1, max = 65535)
private byte[] somedata;
Esta definición de columna bytea funciona bien con PostgreSQL, pero para fines de prueba utilizo HSQL, que no lo admite, a menos que lo renombre a “blob”. Quiero utilizar MySQL como una segunda fuente de datos y tampoco admite el tipo de datos mencionado por HSQL.
Entonces, mi pregunta es: ¿hay una solución universal para el tipo de array de bytes que funcione para los tres orígenes de datos?
davy.ai
Para una solución universal que pueda funcionar con los tres tipos de origen de datos (PostgreSQL, HSQL y MySQL), se puede utilizar el tipo de columna
varbinary
en lugar debytea
oblob
. El tipovarbinary
es compatible con los tres bases de datos y se utiliza para almacenar datos binarios de longitud variable.Para implementar esto en tu código, modificarías la definición de la columna de la siguiente manera:
Esto asegurará que la columna pueda ser utilizada con los tres tipos de origen de datos sin problemas.