Digite para filtrar os verbetes do Glossário.

    Banco de dados · Developer Workspace

    O que é Seed?

    Seed prepara registros iniciais no banco. Entenda registros de referência, exemplos fictícios, repetição da rotina e diferenças em relação às migrations.

    Também chamado de: população inicial, registros de partida, seeding

    Preparar registros de partida

    Seed é uma rotina ou um conjunto de instruções para popular o banco com registros iniciais. Ele pode preparar valores necessários ao sistema ou conteúdo fictício para desenvolvimento e demonstração. A finalidade deve estar explícita para evitar misturar esses usos.

    Um catálogo de situações permitidas pode ser necessário à aplicação. Já contatos fictícios e matrículas de exemplo podem servir apenas para testar telas. Executar as duas rotinas indiscriminadamente em produção criaria conteúdo que não pertence ao uso real.

    A estrutura precisa existir antes das inserções correspondentes. Migrations preparam ou evoluem tabelas, enquanto seeds trabalham com registros dentro delas. Uma rotina de seed não substitui o histórico de alterações estruturais.

    Um exemplo que insere registros

    Conteúdo fictício para um banco de desenvolvimentosql
    INSERT INTO contatos (id, nome) VALUES
    (1, 'Ana'),
    (2, 'Bruno'),
    (3, 'Carla');

    O exemplo pressupõe uma tabela compatível e identificadores ainda disponíveis para inserir as três linhas. Executá-lo novamente no mesmo banco pode violar a chave primária, pois os identificadores 1, 2 e 3 já estarão ocupados. A rotina precisa tratar essa repetição se ela fizer parte do uso previsto.

    Essa distinção corrige uma expectativa comum: seed não significa “apagar e recriar tudo” nem “ignorar qualquer duplicidade”. O comportamento na repetição precisa ser implementado conforme a finalidade da rotina.

    Repetibilidade e idempotência

    Uma rotina pode preparar o mesmo cenário quando executada sobre um banco limpo. Isso é repetibilidade do procedimento, mas não garante que duas execuções consecutivas no mesmo banco tenham o mesmo resultado. A segunda pode acrescentar linhas ou encontrar conflitos.

    Para registros de referência, a rotina pode localizar valores existentes por uma chave estável e criar apenas os ausentes. Em outros casos, pode atualizar campos definidos. O mecanismo deve preservar alterações legítimas que o produto permita fazer depois da instalação.

    Exemplos precisam representar os casos testados

    Três cadastros simples podem permitir abrir uma listagem, mas não exercitam paginação, campos opcionais ou relacionamentos. Prepare cenários que correspondam ao comportamento que você pretende conferir. Valores aleatórios podem ampliar a variedade, mas dificultam reproduzir uma falha quando não há controle da geração.

    Use registros fictícios e evite incluir credenciais reais no código da rotina. Contas de demonstração precisam ficar restritas ao ambiente previsto. O comando de execução deve permitir identificar claramente qual banco receberá as gravações.

    Como verificar o resultado

    Execute o seed em um ambiente apropriado e confira quantidade, valores e vínculos criados. Depois, teste sua repetição conforme o comportamento documentado. Se houver atualização de registros existentes, confirme exatamente quais campos podem mudar.

    O verbete de migration explica a evolução da estrutura que essas rotinas utilizam.

    Dúvidas frequentes

    Perguntas frequentes sobre Seed

    Seed e migration são equivalentes?
    Migration registra a evolução da estrutura ou transformações planejadas. Seed prepara registros de partida dentro da estrutura disponível.
    Executar um seed duas vezes sempre preserva o mesmo resultado?
    O comportamento depende da implementação. A rotina pode duplicar registros, encontrar conflitos ou reconhecer valores existentes. Idempotência precisa ser planejada.
    Todo seed pode executar em produção?
    Registros de referência podem ser necessários em produção, conforme o produto. Cadastros fictícios pertencem ao desenvolvimento ou aos testes. Mantenha rotinas separadas e execute cada uma no banco destinado à sua finalidade.
    Um seed precisa desfazer alterações feitas nas telas?
    Isso depende da finalidade. Uma rotina de referência pode precisar preservar alterações legítimas, enquanto uma preparação de testes pode reconstruir um cenário documentado.

    Para continuar

    Recursos relacionados

    Aplicação na formação

    Developer Workspace

    Seeds preparam registros de referência ou cenários fictícios para conferir telas e fluxos no ambiente previsto.

    Conhecer a formação
    Capa da Formação Developer Workspace

    Fontes consultadas

    Referências deste verbete

    Este verbete ajudou você?

    Planos Promovaweb

    Tire seus projetos do papel

    O Plano Martech cobre automação e atendimento. O Plano IA Makers acrescenta desenvolvimento com IA, enquanto o Plano Founders trata de gestão de negócios. Todos são anuais.

    Plano Martech

    Para conectar automação, marketing e atendimento com infraestrutura própria.

    R$ 897

    R$ 597/ano

    • Grade de automação, atendimento, marketing e análise de indicadores
    • Instalador Exclusivo Promovaweb
    • n8n, Evolution API, Chatwoot e Mautic
    • Trilha DevOps incluída
    • Encontros ao vivo (terça e quinta)
    • Comunidade e acompanhamento
    Conhecer o plano

    Plano Founders

    Plano anual para fazer um projeto de tecnologia avançar, com 90 dias de mentoria intensiva. R$ 1.997 à vista ou até 10x de R$ 219 no cartão.

    R$ 1.997/ano

    • 12 meses de acesso ao Founders
    • 90 dias de mentoria intensiva, um encontro por dia útil
    • Dia de conteúdo (terça e quinta) e War Room (segunda, quarta e sexta)
    • Encontro semanal em grupo após a fase intensiva
    • Formação Vibe Coding incluída no plano anual
    • Consultoria individual de até duas horas (bônus)
    Conhecer o plano