Modelagem de Dados - Normalização - Forma Normal de Boyce-Codd

แชร์
ฝัง
  • เผยแพร่เมื่อ 12 ก.ย. 2024
  • Modelagem de Dados - Normalização - Forma Normal de Boyce-Codd
    Neste vídeo continuamos nosso estudo sobre Normalização em bancos de Dados, desta vez abordando a Forma Normal de Boyce-Codd (FNBC)
    Ajude o canal adquirindo meus cursos na Udemy:
    Bancos de Dados com MySQL Básico: bit.ly/35QdWE4
    Lógica de Programação com Português Estruturado: bit.ly/3QKPn22
    Programação em Python do Zero: bit.ly/python-...
    Adquira também livros e outros itens na loja da Bóson Treinamentos na Amazon e ajude o canal a se manter e crescer:
    www.amazon.com...
    Seja membro deste canal e ganhe benefícios:
    / @bosontreinamentos
    Contribuição via PIX:
    Você pode contribuir com qualquer valor que desejar, de forma muito fácil e prática, fazendo uma transferência via PIX para a seguinte chave: EC25A929-A8C5-40C5-AEC0-3DD36D08A147
    Contribua com a Bóson Treinamentos!:
    www.bosontrein...
    Por Fábio dos Reis
    Bóson Treinamentos: www.bosontrein...
    Instagram: / bosontreinamentos
    Linkedin: / f%c3%a1bio-dos-reis-06...
    Quora: pt.quora.com/profile/Fábio-dos-Reis
    Pinterest: / bosontreina
    Outros projetos do autor:
    Diário do Naturalista: www.diariodona...
    Bóson Ciências e Cultura: / bosonciencias
    Numismática e Investimentos: diarionumismat...
    #normalização #modelagemdedados #bancosdedados

ความคิดเห็น • 96

  • @luizxavier2774
    @luizxavier2774 5 ปีที่แล้ว +47

    CONTEÚDO DA AULA 19...
    01_Apresentação (0:00)
    02_Forma Normal de Boyce_Codd (FNBC) (0:08)
    a)FNBC Pontos a considerar (2:22)
    b)Definição de FNBC (4:34)
    c)FNBC - Normalizando (7:17)
    d)FNBC - Exemplo 2 (não normalizado) (10:22)
    3)Conclusão (14:00)

  • @layanaoliveira3731
    @layanaoliveira3731 6 ปีที่แล้ว +55

    Já me inscrevi no canal Bóson Treinamentos. Gostaria deixar meu feedback em relação a didática do professor Fábio. Simplesmente sensacional, obrigada!!!

  • @giovannarodrigues8264
    @giovannarodrigues8264 7 หลายเดือนก่อน +3

    Professor, obrigada por disponibilizar essas aulas gratuitamente no TH-cam. Em meio a tantas pessoas vendendo cursos por ai é realmente maravilhoso encontrar canais como o seu.

  • @caciocosta1048
    @caciocosta1048 ปีที่แล้ว +1

    Excelente explicação, professor! Mas eu tenho uma limitação pra ver a necessidade de FNBC. Não consigo enxergar nisso uma violação de FNBC, mas sim uma violação da 2FN. F_Nome é uma dependência parcial da chave F#+P#. Aplicando a Segunda Forma Normal se chega ao mesmo resultado.
    Na minha vivência, quando se aplica as regras da 1FN, 2FN e 3FN corretamente, nunca vi precisar de FNBC. E eu sei que isso é limitação de entendimento minha hehehehe... Muito show de bola sua didática. Parabéns!!!

  • @jhonymarti
    @jhonymarti 3 ปีที่แล้ว +4

    Bóson, não some com esses vídeos não, pois acho que vou ter que rever tudo pelo menos umas 10 vezes. Hahah. Cara melhor curso de modelagem disponível da internet. Sem qualquer dúvida. Muito show. 👏👏👏👏👏

  • @Cuervo_279
    @Cuervo_279 16 วันที่ผ่านมา

    Que didática, obrigado professor.

  • @rsmrsm2000
    @rsmrsm2000 5 ปีที่แล้ว +2

    A didática não é só sensacional, é impressionante.

  • @clebsonmachado9692
    @clebsonmachado9692 8 หลายเดือนก่อน +4

    Pra mim essa é a forma mais difícil, mesmo sendo simples na prática. Se tiver vários conjuntos de chaves candidatas o cara se perde fácil. Mas obrigado pelo vídeo, mas claro do que o dia.

  • @pedrohenriquelopes6495
    @pedrohenriquelopes6495 2 ปีที่แล้ว +1

    Professor, sua didática é incrível. Sou formado em humanas e mesmo assim consigo acompanhar suas aulas. Obrigado!

  • @thaisjobb
    @thaisjobb ปีที่แล้ว +1

    Curso muito bom! Professor, suas explicações e sua didática são muito boas, muito obrigada! Aprendo demais com suas aulas! :)

  • @ReisQuarteu
    @ReisQuarteu 4 ปีที่แล้ว +3

    Gosto das suas explicações, mas acho que o primeiro exemplo não é o melhor. Ora, uma das condições para se aplicar a FNBC é que a tabela já esteja na 3FN. Mas a tabela FORN claramente não está na 3FN, porque há uma DF entre F# e F_Name (F# -> F_Name, ou F_Name -> F#, conforme se preferir). Se calhar, nem na 2FN está...

    • @Brunooc0
      @Brunooc0 3 ปีที่แล้ว +2

      Pois é, todos os exemplos que vi são assim. A impressão que ficou é que eu nunca conseguirei chegar em FNBC, pq fazendo 1FN à 3FN, já resolvo todas as anomalias.

  • @mirconguilima4911
    @mirconguilima4911 ปีที่แล้ว

    Mais um inscrito de Moçambique... Prometo compartilhar os videos.... Muito obrigado pelo curso, Deus te abencoe Boson

  • @Paulo.Almeida
    @Paulo.Almeida 4 ปีที่แล้ว

    Eu tive aula disso, fiz perguntas, li o livro-texto, li vários sites, tutoriais e vi alguns vídeos em inglês aqui mesmo no YT. Esse vídeo de vocês foi o único que conseguiu fazer entrar esse assunto na minha cabeça. Talvez pq foram mostrados os propósitos reais de se normalizar para FNBC (quais os tipos de anomalias que serão evitadas). Aprender algo torna-se infinitamente mais fácil quando há uma explicação prática da utilizade. Pelo menos pra mim. Muito obrigado.

  • @adambastos8465
    @adambastos8465 ปีที่แล้ว

    Esse professor é absurdo. Nenhum professor de cursinho conseguiu explicar tão claramente esse assunto de normalização quanto o Fabio.

  • @clebsonmachado9692
    @clebsonmachado9692 ปีที่แล้ว

    Por Fábio dos Reis é sensacional

  • @jeffersondettogni6477
    @jeffersondettogni6477 2 ปีที่แล้ว

    Primeiramente, parabéns pela iniciativa do curso, estou aprendendo muito com ele. Quanto a FNBC, a chave composta de Número do Fornecedor + Cód. do Produto, a princípio é complicado de entender porque seria uma chave candidata exclusiva que não se repetiria, pois, é possível que o mesmo fornecedor forneça novamente o mesmo produto. Mas ai, pensando mais um pouco, percebi que como chave composta, realmente seria exclusiva, pois, o que iria variar seria a quantidade fornecida. É complicado essa FNBC, tem que pensar bastante para entender o espírito da coisa.

  • @1984diegobobby
    @1984diegobobby 3 ปีที่แล้ว

    acabei virando teu fã Fabio, tu é um ótimo professor cara, e ainda curte Dream Theather, vc não tem como não ser um cara massa, parabéns professor

  • @demervalleite5891
    @demervalleite5891 4 ปีที่แล้ว

    mais uma aula extraordinária, didática muito boa, esse canal é muito proveitoso para quem está aprendendo

  • @Paulo-fr3zm
    @Paulo-fr3zm ปีที่แล้ว

    Muito bom, obrigado

  • @MartinsPontoGames
    @MartinsPontoGames 5 ปีที่แล้ว +5

    muito bom!! obrigado pelas suas aulas!! OBS: acho que tem um easter egg do resident evil nessa tabela.

  • @DabioOtto
    @DabioOtto 3 ปีที่แล้ว

    Fábio, parabéns pelos seus vídeos. Excelentes.

  • @rf_mentoria
    @rf_mentoria 3 ปีที่แล้ว +2

    Professor, parabéns pela aula! Eu só fiquei com uma dúvida. Se na coluna "disciplina" eu tenho um atributo composto, nesse caso eu não estaria diante de uma normalização de 2ª forma? Pode fazer um vídeo comentando ?

    • @D4RKS1DER_632
      @D4RKS1DER_632 2 ปีที่แล้ว

      Tô respondendo meio tarde, mas pra quem tiver essa dúvida se existir atributos compostos não estaria nem mesmo na primeira forma normal (1FN) pois a tabela não teria somente atributos atômico.

  • @OnPlayGamersOfficial
    @OnPlayGamersOfficial 6 ปีที่แล้ว +1

    Excelente vídeo e excelente conteúdo, apoio uma nova série de Redes com algumas normas como a IEEE 802.3 e a 802.11, tem alguns tópicos a serem abordados que são interessantes que acho que irá ajudar muitos estudantes, pelo vídeo obrigado Fábio!

  • @giselegomes1859
    @giselegomes1859 4 ปีที่แล้ว +1

    Parabéns Professor. Maravilhoso.

  • @macmacmac991
    @macmacmac991 5 ปีที่แล้ว

    Excelente explicação do professor através deste canal de tecnologia. Realmente essa questão de Normalização tem as suas complicações!

  • @fehxavier4805
    @fehxavier4805 หลายเดือนก่อน

    Consegui entender essa aula só no final no segundo exemplo kkk, ficou mais visivel e bem mais explicado haha

  • @romuelm395
    @romuelm395 5 ปีที่แล้ว

    Fábio. Gosto do seu trabalho. Vc é 10.

  • @brunoconcurseiro
    @brunoconcurseiro 3 ปีที่แล้ว +7

    Chegou o momento da aula que eu já não consigo entender mais nada

    • @joana5139
      @joana5139 3 ปีที่แล้ว

      Se não conseguir com esse professor, pq eu te afirmo... ele é tem didática mto boa

  • @Brunooc0
    @Brunooc0 3 ปีที่แล้ว +1

    Normalizei algumas tabelas e em nenhuma deu pra usar FNBC. É como se ao chegar na 3FN todos as anomalias já estivessem sido resolvidas. Não achei exemplos onde uma tabela é normalizada da 1FN até a FNBC.

  • @Santosamapaio
    @Santosamapaio 5 หลายเดือนก่อน

    Muito bom, professor!!

  • @pedroportella3134
    @pedroportella3134 5 ปีที่แล้ว +2

    Muito bom o vídeo professor! Só ocorreu um probleminha na hora de definir a chave primária da tabela desmembrada 'tbl_AP', pois a chave dessa relação deve ser Aluno e Professor, caso contrário, sendo apenas Aluno, não haverá exclusividade de registro, uma vez que nas regras de negócio um mesmo aluno pode se matricular em mais de uma disciplina, que por sua vez pode ser lecionada por mais de um professor. Problema que pode ser ilustrado no registro Aluno = 503, no qual há repetição de registros para esse mesmo aluno.

  • @AprendeAiBr
    @AprendeAiBr 2 ปีที่แล้ว

    muito bom

  • @diegosouza7113
    @diegosouza7113 2 ปีที่แล้ว

    Aula top, e foto final top

  • @Diego-tk4ed
    @Diego-tk4ed 5 ปีที่แล้ว

    parabéns pelo vídeo! claro, objetivo e bem didático!

  • @glenadiel6979
    @glenadiel6979 2 ปีที่แล้ว

    Primeiro vez que consigo entender melhor agr de fato o FNBC

  • @VanderleiRobertoMoretto
    @VanderleiRobertoMoretto 4 ปีที่แล้ว

    Na normalização de FNBC (9:50 - primeiro exemplo, penso que a segunda opção (Forn_Nome_Prod) é a melhor, pois, não repete um campo identificador, no caso o F#.

  • @altanairdahorasilva2567
    @altanairdahorasilva2567 ปีที่แล้ว

    são muitos detalhes

  • @carlosjr.7802
    @carlosjr.7802 11 หลายเดือนก่อน

    Lembrando que a FNBC só é válida pois F_Nome, F# e P# possuem as 3 restrições de integridade (exceto a restrição de chave que é resolvido após a normalização) e por isso suas combinações podem ser dadas como chaves candidatas compostas. Se não me engano, esse também é um caso de relacionamento com cardinalidade N:N entre P# e F# e também P# e F_Nome (que é único) oque evidencia a superposição de P#.

  • @LuizEduardo-ie5pp
    @LuizEduardo-ie5pp ปีที่แล้ว

    tu tem o dom pra dar aula

  • @julianagordon5017
    @julianagordon5017 4 ปีที่แล้ว

    Adorei sua didática Fábio. Ficou mais fácil aprender modelagem de dados. Quando vai ter o curso de postgresql?

  • @monkeyd.angello8048
    @monkeyd.angello8048 3 ปีที่แล้ว

    aprendo mais aqui do que com os videos da minha faculdade.

  • @edsonsilva6882
    @edsonsilva6882 6 ปีที่แล้ว +1

    Muito bom o vídeo, vou apresentar seminário amanhã, e vim correndo pro canal ahushsh, parabéns pelo canal!

  • @luizrodrigosoltovski7514
    @luizrodrigosoltovski7514 4 ปีที่แล้ว +1

    No último exemplo: 'aluno' e 'professor' não poderiam também formar uma chave candidata?

  • @vitorGHR_2010
    @vitorGHR_2010 หลายเดือนก่อน

    13:05 eu poderia, ao inves de criar da tabela tbl_AP(contendo os atributos Aluno e Orientador), criar a tabela tbl_AD(Contendo os atributos Aluno e Disciplina)?

  • @junio2805
    @junio2805 5 ปีที่แล้ว +2

    a combinação fornecedor&nome do produto pode se repetir nesta tabela se um mesmo fornecedor realizar uma outra venda com o mesmo produto, não!?

    • @EdAugusto
      @EdAugusto 3 ปีที่แล้ว +1

      Guilherme Passos, creio que a tabela do exemplo não se refira a compras individualizadas, mas sim ao total de itens (classificados por fornecedor) existentes no estoque, ou seja, a cada nova aquisição (entrada) e cada nova venda ou consumo (saída), haverá apenas a atualização do valor do atributo "quantidade".

    • @digorod8776
      @digorod8776 3 ปีที่แล้ว

      @@EdAugusto eu estava com dúvida justamente nisso, obrigado.

  • @Pips_
    @Pips_ ปีที่แล้ว

    O aluno 501 não é da Ana Maria? de onde veio o 502?

  • @engebras-engenhariabrasili9977
    @engebras-engenhariabrasili9977 6 ปีที่แล้ว +3

    Parabéns Xará. Pergunto: essa situação de PK composta, atributo determinante e todas anormalidades, não pode ser resolvida simplesmente com adição de uma coluna PK-Auto Incremento e se construindo uma tabela para cada entidade específica e depois fazer a dança dos relacionamentos entre tabelas, PK e FK?

    • @jchaves513
      @jchaves513 6 ปีที่แล้ว

      ENGEBRÁS-ENGENHARENGEBRÁS-ENGENHARIA, Usar chaves "automáticas", é uma violação do propósito da normalização, uma vez q não identificam um objeto no mundo real, mas o costume é tão arraigado q fica dificil até falar sobre isso.

    • @jchaves513
      @jchaves513 6 ปีที่แล้ว

      Ops! Não "do propósito da normalização" mas do propósito das chaves primárias.

    • @engebras-engenhariabrasili9977
      @engebras-engenhariabrasili9977 6 ปีที่แล้ว

      De toda forma ela resolve o problema sem deixar conflitos.

    • @Tecladista643
      @Tecladista643 6 ปีที่แล้ว +3

      Pensei a mesma coisa enquanto assistia a aula que criar um campo chamado Id_NomeDaTabela como Pk auto incremento seria uma resposta rápida e eficaz para o problema, ao invés de procurar combinações de atributos ou colunas para criar uma chave primária composta. Criando uma chave primária composta talvez gere problemas com as outras formas normais 2FN e 3FN, devendo analisar de novo se poderá ter dependências parciais ou dependências transitivas. Resumindo o atributo PK-auto Incremento seria muito mais prático e fácil para resolver o problema.

    • @MrGuitarPE
      @MrGuitarPE 2 ปีที่แล้ว

      Ou seja, usar uma chave surrogada. Que é usada intencionalmente, em muitas vezes, para substituir as chaves compostas.

  • @LeonardoMarcattidaSilva
    @LeonardoMarcattidaSilva 6 ปีที่แล้ว +1

    Olá Fábio. Você falará sobre a 4FN e 5FN?
    Abraços!

  • @isanagi.
    @isanagi. ปีที่แล้ว

    tenho uma dúvida. não entendi porque é necessário manter o número do fornecedor em uma tabela. se o numero do fornecedor é uma informação artificial, suponho que seja uma surrogate key, por que ele deve ser armazenado?

  • @iandev4585
    @iandev4585 3 ปีที่แล้ว +1

    Fábio qual o seu parentesco com o BRksEdu?

    • @digorod8776
      @digorod8776 3 ปีที่แล้ว +1

      Ele é pai dele man.

  • @flawtista
    @flawtista 5 ปีที่แล้ว

    Muito boa a aula!

  • @jonnevitu4979
    @jonnevitu4979 5 ปีที่แล้ว +1

    13:04 nesse exemplo eu poderia fazer apenas uma tabela aluno somente com os numeros de cada um e outra tabela com as diciplinas e professores?

    • @felipebrigagao7073
      @felipebrigagao7073 4 ปีที่แล้ว

      Não poderia, porque dessa maneira não iria conseguir fazer a relação das duas tabelas, elas precisam ter uma coluna em comum pra isso.

  • @kelsondossantossantos9785
    @kelsondossantossantos9785 6 ปีที่แล้ว

    Fabio sera que vc poderia fazer uma aula sobre generalizacao e especializacao?

    • @bosontreinamentos
      @bosontreinamentos  6 ปีที่แล้ว

      Sim Kelson, vou acrescentar alguns vídeos no término do curso abordando tópicos diversos, e um deles será sobre esse tema. Abraço!

  • @joaopinha9475
    @joaopinha9475 5 ปีที่แล้ว

    No exemplo 6:50 foi falado que os campos f# e p# formavam uma chave candidata, mas não seria uma chave composta?

    • @bosontreinamentos
      @bosontreinamentos  5 ปีที่แล้ว +3

      Elas forma uma chave candidata, pois ainda não foram escolhidas para serem a chave primária. De toda forma, nesta tabela a chave primária será composta.

    • @joaopinha9475
      @joaopinha9475 5 ปีที่แล้ว

      @@bosontreinamentos Muito obrigado

  • @agnaldoarturmassango6720
    @agnaldoarturmassango6720 6 ปีที่แล้ว

    Olá Professor Fábio como vai? Quando é que sai o projecto? Abraços vindo daqui de Moçambique e Muito obrigado p/ Treinamento...

    • @bosontreinamentos
      @bosontreinamentos  6 ปีที่แล้ว +1

      Olá Agnaldo! No final do mês de novembro/17 (semana que vem!) começo a postar os vídeos do projeto.
      Abraço!

    • @agnaldoarturmassango6720
      @agnaldoarturmassango6720 6 ปีที่แล้ว

      Anotado! Obrigado.

  • @jabesprotazio3427
    @jabesprotazio3427 ปีที่แล้ว

    Vc percebe que o professor é bão de aula, quando ele banha e peteia o cabelo.

  • @renanrosa5527
    @renanrosa5527 6 ปีที่แล้ว

    Olá, qual normalização trata o problema da dependência Multivalorada?

    • @Gabs__00
      @Gabs__00 6 ปีที่แล้ว

      A 1° forma normal visa eliminar campos multivalorados

  • @juniormarseille9860
    @juniormarseille9860 2 ปีที่แล้ว +1

    essa aula veio para brigar comigo kkkkkkkkkkkkk não entendi nada..... até a terceira formal já basta para mim.

  • @lninfogame8509
    @lninfogame8509 6 ปีที่แล้ว

    boa tarde professor fabio , tudo certo? estou com uma duvida e espero que possa me ajudar , vou começar a faculdade de t i - banco de dados , gostaria de saber se irei ter que aprender a usar excel ? vou ser obrigador a aprender ou nao será necessario ? obrigado

    • @bosontreinamentos
      @bosontreinamentos  6 ปีที่แล้ว +2

      Olá Leandro! Geralmente Excel não é necessário diretamente para quem trabalha com bancos de dados, mas é recomendável saber criar planilhas em geral, pois pode ser útil para realizar outras tarefas não coligadas.
      Abraço!

  • @evanildoc39
    @evanildoc39 8 หลายเดือนก่อน

  • @Nathanandrademod
    @Nathanandrademod ปีที่แล้ว

    mano essa figurinha no final do video é sessacional skksksksksks

  • @blogueiraatipica
    @blogueiraatipica 8 หลายเดือนก่อน

    Nao entendi

  • @Leoandro2000
    @Leoandro2000 2 ปีที่แล้ว

    Tenho medo de quem tem a ACME e a UMBRELLA como fornecedor. O quê mais? Weyland-Yutani? kkkkkkkkkkkkkk

  • @Junior725
    @Junior725 7 หลายเดือนก่อน

    Entendi foi nada...

  • @LilaHondo
    @LilaHondo 5 ปีที่แล้ว +4

    Muita teoria enfadonha, na prática vc saca tudo isso por intuição sem nem saber os passos da normalização

  • @RafaBrigatto
    @RafaBrigatto 4 ปีที่แล้ว

    Só fornecedores perigosos kkkkkkkkkk

  • @jonathassantos8304
    @jonathassantos8304 2 ปีที่แล้ว

    A aula é boa, mas esse assunto é chato pra cacete! PQP!!