Digite para filtrar os verbetes do Glossário.

    Banco de dados · Formação DevOps

    Relacionamento

    Relacionamento é a associação definida entre entidades ou registros em um modelo.

    Também chamado de: associação entre entidades, vínculo entre registros, relação

    Definição

    Relacionamento é a associação definida entre entidades ou registros. Ele descreve como um conceito se liga a outro, por exemplo, como um cliente se liga aos pedidos que faz.

    Cardinalidade a partir de perguntas do negócio

    As perguntas certas revelam a cardinalidade. Um cliente pode ter vários pedidos, e cada pedido pertence a um único cliente, o que forma um relacionamento um para muitos. Quando cada cliente tem um único cadastro de endereço principal, o vínculo é um para um, e quando vários clientes podem comprar vários produtos, o modelo precisa de uma associação muitos para muitos.

    Um para muitos na estruturasql
    CREATE TABLE clientes (
    id INTEGER PRIMARY KEY,
    nome TEXT NOT NULL
    );
    CREATE TABLE pedidos (
    id INTEGER PRIMARY KEY,
    cliente_id INTEGER NOT NULL,
    FOREIGN KEY (cliente_id) REFERENCES clientes (id)
    );

    A associação do modelo e sua implementação

    Relacionamento é a associação do modelo, não uma obrigação de formato físico. A implementação depende da estrutura escolhida: em um banco relacional, o vínculo usa chaves, enquanto outros armazenamentos podem usar documentos aninhados ou referências. O desenho conceitual permanece, e a persistência se adapta a ele.

    Falha comum e como verificar

    A falha mais comum é declarar a cardinalidade errada, porque uma pergunta incompleta sobre o negócio gera um vínculo que não comporta os casos reais. Se um cliente pode ter vários endereços e o modelo assume um para um, o segundo endereço é sobrescrito ou recusado. Para verificar, faça a pergunta ao contrário, quantos registros o lado oposto pode ter, e confira se a estrutura permite esse número. Depois, tente gravar o caso limite e observe se o banco aceita a linha. Quando a gravação quebra ou o modelo força perda de conteúdo, a cardinalidade precisa ser revisada.

    Veja o vínculo persistido por chave estrangeira

    Dúvidas frequentes

    Perguntas frequentes sobre Relacionamento

    Um relacionamento é uma tabela?
    Não. É a associação do modelo. A implementação depende da estrutura escolhida para persistência.
    O que é cardinalidade?
    É a medida do relacionamento, como um para um, um para muitos e muitos para muitos.
    Como descobrir a cardinalidade?
    Com perguntas sobre o negócio, como quantos pedidos um cliente pode ter.

    Para continuar

    Recursos relacionados

    Aplicação na formação

    Formação DevOps

    Na Formação DevOps, relacionamentos definem como tabelas se ligam e guiam a criação de chaves e índices.

    Conhecer a formação
    Capa da Formação DevOps

    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$ 2.997/ano

    • 12 meses de acesso ao Founders
    • 90 dias de mentoria intensiva (segunda a sexta)
    • War Rooms às segundas, quartas e sextas
    • 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