O que o relatório mostra
O relatório separa as constatações em três grupos:
- Bloqueios: uma coluna que não tem equivalente no destino e pede uma decisão antes da carga.
- Pedem atenção: a coluna migra, mas algo muda: precisão, comportamento ou uma regra que você precisa recriar.
- Colunas sem observações: a coluna migra como está, com o tipo de destino sugerido.
Para cada constatação você recebe a tabela, a coluna, o tipo na origem, o tipo sugerido no destino e o que fazer.

O que ele verifica, SQL Server → PostgreSQL
sql_variant: sem equivalente; separe por tipo ou converta antes (bloqueio).geography,geometry,hierarchyid: sem equivalente nativo; dados espaciais precisam do PostGIS, hierarchyid precisa de ltree ou de um novo desenho (bloqueio).datetime2com 7 dígitos: o PostgreSQL guarda microssegundos, então o 7º dígito é cortado.moneyviraNUMERIC(19,4);tinyintviraSMALLINT.rowversion: gerado pelo SQL Server, então o valor não migra.datetimeoffset: otimestamptzguarda o instante em UTC, não o offset original.- Colunas
xml,text,ntext,imagee(max), com os limites de cada lado. - Comparação de texto: o SQL Server costuma ignorar maiúsculas e o PostgreSQL não; então WHERE, JOIN e chaves únicas em texto podem se comportar de outro jeito.
O que ele verifica, PostgreSQL → SQL Server
- Arrays: o SQL Server não tem tipo array (bloqueio).
NUMERICcom mais de 38 dígitos (bloqueio), eNUMERICsem precisão, que viraDECIMAL(38,10).json/jsonb,interval,inet/cidr/macaddr, enums e domains,timestamptz.- Maiúsculas: valores que diferem só nas maiúsculas podem colidir em chaves únicas no SQL Server.
Verificado em todos os pares
Estas regras valem para todos os bancos que o dbSlice lê, não só SQL Server e PostgreSQL:
- Tabelas sem chave primária.
- Colunas autoincremento, e o próximo valor depois da carga.
- Nomes que precisam de aspas no destino.
- Tipos sem equivalente conhecido.
Hoje, regras de tipo detalhadas existem só para SQL Server ⇄ PostgreSQL.
Como rodar
- Instale a versão gratuita da Microsoft Store e cadastre duas conexões: o banco que você tem e um do tipo para o qual vai migrar.
- Abra o Compare structure e escolha a conexão de origem e a de destino.
- Clique em Migration assessment e escolha onde salvar o relatório HTML. Ele abre no seu navegador quando termina.
O relatório lê só o esquema da origem. Ele não cria nem altera nada em nenhum dos dois bancos.
Da avaliação à migração
A avaliação é gratuita. Mover os dados não é: a migração em si (Initial load, Upsert, Só linhas novas, comparação chave a chave depois) exige uma licença do dbSlice. Veja os preços.
Vai substituir um sistema e precisa de ajuda para desenhar a convivência? A Thinwork pode tocar o projeto com você. Veja como migrações e sincronias rodaram em produção nas histórias de clientes.
Perguntas frequentes
A avaliação de migração é mesmo gratuita?
Sim. Ela roda na versão gratuita da Microsoft Store, sem licença. Migrar, sincronizar e replicar dados exige uma licença.
Ela altera o meu banco?
Não. É só leitura: lê o esquema da origem e grava um arquivo HTML no seu computador.
Quais bancos ela cobre?
Regras de tipo detalhadas para SQL Server para PostgreSQL e PostgreSQL para SQL Server. Para os outros pares (Oracle, MySQL, MariaDB, Firebird, SQLite, InterSystems Caché/IRIS e outros), ela aplica as regras gerais: chaves primárias, autoincremento, nomes e tipos desconhecidos.