Comparação de esquema SQL
Compare dois esquemas CREATE TABLE e gere a migração ALTER TABLE entre eles.
Comparação de esquema SQL
Cole o seu esquema atual à esquerda e o esquema que pretende alcançar à direita, e esta ferramenta escreve a migração entre eles. Compara declarações CREATE TABLE tabela a tabela e coluna a coluna, depois gera as declarações CREATE TABLE, DROP TABLE, ADD COLUMN, DROP COLUMN e ALTER COLUMN necessárias para transformar o primeiro esquema no segundo — útil para rever uma mudança de esquema, escrever um ficheiro de migração à mão ou verificar o que uma ferramenta de geração de esquema realmente fez.
Escolha uma base de dados na opção Base de dados — PostgreSQL, MySQL ou SQLite — pois cada uma escreve alterações de colunas de forma diferente: PostgreSQL usa ALTER COLUMN ... TYPE e SET/DROP NOT NULL, MySQL combina tipo e nulabilidade numa única declaração MODIFY COLUMN, e SQLite não tem ALTER COLUMN, portanto esses casos são anotados como necessitando uma reconstruir tabela. Inclua alterações de índices para comparar também declarações CREATE INDEX, encapsule o resultado numa transação e ative a opção de reverter para uma segunda migração inversa anexada abaixo da primeira.
Eliminar uma tabela ou coluna, estreitar um tipo ou adicionar NOT NULL pode descartar dados ou falhar face a linhas que não se encaixam na nova restrição. Com "Avisar sobre perda de dados" ativa, cada um desses passos é marcado no resultado para que seja fácil detetar antes de executar qualquer coisa numa base de dados real. As tabelas que se referem entre si através de uma chave estrangeira são criadas e eliminadas por ordem de dependência, por isso o script não falha numa tabela que precisava primeiro.
Tudo corre localmente no seu navegador — os seus esquemas nunca são enviados para lado nenhum, por isso é seguro colar definições de tabelas reais de uma base de dados privada. Copie a migração, transfira-a como ficheiro .txt ou envie o resultado de volta para a entrada para continuar a refiná-lo.