PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Forçar o Liquibase a mapear Blob para BYTEA no PostgreSQL


Você tem duas opções.

Se você só precisa disso para o Postgres e não planeja oferecer suporte a outros DBMS, basta usar bytea como o tipo de coluna.

Qualquer tipo de dados que não esteja listado como um dos tipos "genéricos" na descrição da coluna etiqueta será passado "como está" para o banco de dados, por exemplo
<createTable tableName="foo">
  <column name="id" type="integer"/> 
  <column name="picture" type="bytea"/>
</createTable>

Se você quiser dar suporte a diferentes DBMS, você pode definir uma propriedade dependendo do DBMS:
<property name="blob_type" value="bytea" dbms="postgresql"/>
<property name="blob_type" value="blob" dbms="oracle"/>

então mais tarde
<createTable tableName="foo">
  <column name="id" type="integer"/> 
  <column name="picture" type="${blob_type}"/>
</createTable>