Importando SQL
Já tem um banco de dados? Importe seu schema existente a partir de arquivos SQL ou cole instruções CREATE TABLE para gerar um diagrama instantaneamente.
Neste guia
- 1Abra o modal de Importar SQL
- 2Escolha upload de arquivo ou colar texto
- 3Visualize as tabelas analisadas
- 4Importe e revise o resultado
- 5Trate conflitos e avisos
Passo 1: Abra o modal de Importar SQL
Na barra de ferramentas, clique no ícone de Upload (Importar SQL). Isso abre o modal de Importar SQL. Você precisa de permissões de editor para importar — visualizadores verão o botão desabilitado.
Passo 2: Escolha upload de arquivo ou colar texto
O modal de importação tem duas abas:
Aba Arquivo: Arraste e solte um arquivo .sql na zona de upload, ou clique para navegar. O ER Flow aceita arquivos .sql e .txt. O arquivo é lido inteiramente no navegador — nada é enviado ao servidor até você clicar em Importar.
Aba Texto: Cole seu SQL diretamente na área de texto. Útil quando você quer importar algumas instruções CREATE TABLE do seu código-fonte ou de uma exportação do banco de dados.
O parser do ER Flow suporta SQL padrão de PostgreSQL, MySQL e SQLite, incluindo:
CREATE TABLEcom todos os tipos de coluna e restriçõesPRIMARY KEY,UNIQUE,NOT NULL,DEFAULTinlineFOREIGN KEY ... REFERENCEScom regras de cascataON DELETE/ON UPDATECREATE INDEXeCREATE UNIQUE INDEX(independentes)- Nomes de tabela qualificados por schema (por exemplo,
public.users) - Identificadores entre aspas (aspas duplas, backticks, colchetes)
Passo 3: Visualize as tabelas analisadas
Assim que você cola ou faz upload do SQL, o parser executa imediatamente e exibe um painel de prévia na parte inferior do modal. Você verá:
- Quantas tabelas foram encontradas
- O nome de cada tabela e quantas colunas ela tem
- Eventuais erros de análise (destacados em vermelho)
Essa prévia permite verificar se o SQL foi analisado corretamente antes de importar.
Passo 4: Importe e revise o resultado
Clique em "Importar" para aplicar o schema analisado. O ER Flow irá:
- Criar novas tabelas para qualquer tabela que ainda não esteja no seu schema
- Reutilizar tabelas existentes se uma tabela com o mesmo nome já existir (adiciona colunas faltantes, ignora as existentes)
- Criar chaves estrangeiras entre tabelas, resolvendo as referências automaticamente
- Criar índices (tanto instruções
CREATE INDEXinline quanto independentes) - Criar tabelas stub para tabelas referenciadas que não estavam incluídas no SQL (por exemplo, se uma FK referencia uma tabela que não está na importação)
Todas as tabelas importadas aparecem no canvas na mesma posição — você vai querer organizá-las após a importação.
Passo 5: Trate conflitos e avisos
Após a importação, você pode ver um toast de sucesso com avisos:
- "Tabela X já existe. Importada como X_2" — o nome da tabela já estava em uso, então foi renomeada
- "Coluna X.y já existe com um tipo diferente. Tipo atual mantido." — a coluna existe mas com um tipo diferente; o tipo existente é preservado
- "Tabela referenciada X não está no SQL. Stub criado." — uma FK referencia uma tabela que não está na importação; uma tabela de marcador foi criada
- "Tabela X tinha uma PK inteira chamada id sem auto-incremento. Marcada como auto-incremento." — padrão comum detectado e corrigido automaticamente
Todas as alterações importadas podem ser desfeitas com Ctrl+Z se algo não parecer correto.