========================================================================== RESUMO ========================================================================== tabelas: 96 colunas: 1062 chaves estrangeiras: 148 índices: 171 (únicos: 8) charset por tabela: utf8mb3=92 utf8mb4=4 ========================================================================== TIPOS EM USO ========================================================================== int 367 varchar 235 datetime 155 double 95 tinyint 84 time 62 text 32 date 23 mediumtext 3 char 3 decimal 2 smallint 1 ========================================================================== 1. ENUM e SET — PostgreSQL trata de forma diferente ========================================================================== ENUM vira tipo próprio (CREATE TYPE) ou CHECK; SET não tem equivalente. (nenhum) ========================================================================== 2. tinyint(1) — candidatos a boolean ========================================================================== 81 colunas. Cuidado: nem toda tinyint(1) é booleana, e o D17 registra mapeamento Doctrine divergente do banco. agendas.checkin agendas.checkout agendas.add_comanda agendas_exclusoes.checkin agendas_exclusoes.checkout agendas_exclusoes.add_comanda app_banners.status areas_atuacao.status arquivos.link arquivos.status assistentes_conversas.descartar_blocos assistentes_mensagens.fora_do_historico caixas.status caixas_retiradas.status clientes.bloqueio_agendamento_app clientes.cadastro_restricao_agendamento clientes.fidelizado_colaborador clientes.pesquisa_satisfacao_whatsapp clientes.marketing clientes.status clientes_debitos.status clientes_pacotes.status convenios.contrato_vencido convenios.status cupons.status ... e mais 56 ========================================================================== 3. UNSIGNED — não existe no PostgreSQL ========================================================================== 0 colunas. Viram int/bigint com CHECK >= 0, ou sobem de tipo. (nenhum) ========================================================================== 4. datetime / timestamp — decidir timestamp vs timestamptz ========================================================================== 155 colunas. agendas.data datetime agendas.data_criacao datetime agendas.data_alteracao datetime agendas_exclusoes.data datetime agendas_exclusoes.data_criacao datetime agendas_exclusoes.data_alteracao datetime agendas_exclusoes.data_exclusao datetime agendas_fechamentos.data_inicio datetime agendas_fechamentos.data_fim datetime agendas_fechamentos.data_criacao datetime agendas_fechamentos.data_alteracao datetime app_banners.data_criacao datetime ... e mais 143 ========================================================================== 5. DATAS ZERO — PostgreSQL REJEITA 0000-00-00 ========================================================================== Bloqueia a carga. Precisa virar NULL ou uma data sentinela ANTES de migrar. (nenhum) ========================================================================== 6. ON UPDATE CURRENT_TIMESTAMP — exige gatilho no PostgreSQL ========================================================================== (nenhum) ========================================================================== 7. PALAVRAS RESERVADAS do PostgreSQL usadas como identificador ========================================================================== (nenhum) ========================================================================== 8. TABELAS SEM CHAVE PRIMÁRIA ========================================================================== Sem PK não há replicação lógica nem RLS confiável. (nenhum) ========================================================================== 9. COLUNAS DE TEXTO/BLOB GRANDE ========================================================================== assistentes_conversas.sistema mediumtext assistentes_mensagens.conteudo mediumtext confirmacoes.resposta mediumtext