[Música] [Música] olá meu nome é para eu estou acompanhando vocês a disciplina de bancos de dados oferecida para engenharia da computação pela universo hoje na nossa quinta a aula nós vamos estudar algumas características alguma formalização e algumas inscrições referentes ao modelo relacional modelo relacional é um modelo de dados que representa o banco de dados como uma colecção de relações uma relação remete a uma tabela de valores na qual cada linha representa uma coleção de valores relacionados essa coleção de valores são representados pelas colunas da tabela uma linha nesta relação representa um fato que tipicamente corresponde
a uma entidade individual bom relacionamento individual que ocorre no mundo real nas aulas anteriores nós estudamos entidades e relacionamentos dentro do modelo entidade-relacionamento os mesmos conceitos estarão perdendo o nosso estudo do modelo relacional porém nós temos que agora enxergá los de uma maneira um pouco diferente o modelo relacional ele já é o modelo mais próximo do que nós é implementar e mussum sistema gerenciador de banco de dados uma vez que nós estamos construindo um modelo relacional nós especificamente usaremos um sistema gerenciador de banco de dados que assumir esse modelo ou seja o sistema gerenciador de
banco de dados relacional ou um sistema gerenciador de banco de dados objeto relacional que também possui características é que são stream secas a modelo relacional mas que pode assumir este modelo dentro das suas funcionalidades implementar todas as restrições necessárias bom um novo dia a dia no trabalho com o modelo relacional existem alguns conceitos que são nomeados com uma nomenclatura mais usual é importante que nós saibamos a nome natura formal mas que nós saibamos também que há um mapeamento entre a nomenclatura formal e aquela que comumente se usa no dia-a-dia das diferentes empresas que desenvolvem projetos
de banco de dados então nós temos um modelo relacional quatro conceitos que são bastante importantes que são relação tubular atributo e domine a relação ela pode ser nomeada como uma tabela dupla muitas pessoas no meio como sendo linha atributo como coluna e domínio como tipo de um dado vamos ver um exemplo do que seria uma relação do modelo relacional então é que nós temos o exemplo de uma relação à chamada funcionário a relação ao funcionário possui vários atributos e vejam que os atributos estão organizados dentro de uma tabela nas colunas dessa tabela estão os valores
que são atribuídos a cada um dos atributos diante de determinados dados de determinados fatos do mundo real esses fatos eles são representados nas duplas ou nas linhas então na primeira tudo pela da relação funcionário nós temos o identificador 163 o nome cláudia moraes o endereço rua a com fp e assim por diante isso significa que todos os valores que estão cadastrados que são assumidos nesta tupi lula para todos os atributos ou seja em todas as colunas dizem respeito a um fato do mundo real que é o funcionário 163 bom então alguns alguns conceitos diferentes referências
alguma formalização necessária para o estudo do modelo relacional nós temos um modelo relacional que o esquema dê relação r a 1a 2a n é composto de uma relação um curioso nome r&d uma lista de atributos a lista de atributos que está especificada entre os parentes a 1a 2a ele cada atributo a rir sendo que pode assumir 1234 n é um homem do papel desempenhado por um domínio de o esquema da relação é já veremos um exemplo é o grau de uma relação é um dos atributos que o esquema que a define possui então nós temos
aqui um exemplo de um esquema que é o esquema para o funcionário que tem vários atributos identificador evidente nome endereço salário data de nascimento e cada um desses atributos possui um tipo de dado esse tipo de dado é o domínio pois a partir do momento em que nós temos a definição do tipo de um dado nós estamos estabelecendo todo o conjunto de valores possíveis para aquele aquele atributo então por exemplo em nome que mais prende nós podemos colocar uma série de caracteres que vai identificar que vão compor o nome do funcionário relata o funcionário possui
cinco atributos então ela possui grau 5 uma relação é risinho r minúsculo é definida sobre um esquema r maiúsculo é um conjunto de várias duplas cada uma dessas duplas é uma lista ordenada de valores então vejam que uma dupla é composta de uma lista ordenada uma relação é composta de um conjunto de tutelas isso implica em uma diferença que nós já vamos estudar o mesmo valor de uma dupla ter o qual corresponde ao atributo a referenciado como te deaai ou ter pontuado vamos olhar para esse exemplo que nós temos aqui nesse evento nós temos uma
relação que é um conjunto de tudo pelas e cada turma é uma lista de atributos e nós podemos fazer referência a um valor específico por exemplo se eu quiser me referenciar ao valor no ace junqueira que é o nome do funcionário 165 eu devo usar a notação t3 porque é a terceira tupi lula no atributo nome porque é a coluna onde eu tenho o valor moacir junqueira então t3 de nome é igual à moacir junqueira chamar tratar ou é usar o 3d nome significa a mesma coisa que usar o valor nós e junqueira vamos falar
um pouco então sobre a ordenação de triplas e uma relação ea ordenação de atributos em uma turma então a relação é definida como um conjunto de duplas elementos de um conjunto nos ordenados então as frutas em uma relação não possuem uma ordenação e isso significa que se nós tivermos uma relação à com atributos e dance e nome e uma relação b com o atributo evidente e nome e tivermos o mesmo conjunto de tupi pelas nas duas relações mas em ordens diferentes nós vamos ter relações de iguais pois a ordem das duplas em uma relação não
importa porém quando nós falamos dos valores dentro das duplas nós vamos ver que a ordenação é importante pois não estamos falando de uma lista ordenada de valores isso significa que a relação à ad ferente da relação c porque porque nós temos na relação à ordem dos atributos sendo dente e nome e na relação ser nós temos uma ordem diferente nós temos a ordem nome e dentro então mesmo que nós tenhamos os mesmos valores distribuídos na mesma ordem ti na mesma ordem em cada um e cada uma das colunas nós teremos relações diferentes então a relação
à diferença da relação se essa é uma restrição que para efeitos práticos em alguns momentos nós poderemos flexibilizar mas num primeiro momento nós vamos ter que assumir bom então falando de valores que nós podemos inserir nos atributos das duplas e falando do valor no modelo relacional cada valor em uma turma é um valor atômico assim atributos compostos e atributos multi valoradas que eram possíveis de serem usados no modelo entidade-relacionamento não poderão ser usados no modelo relacional se nós tivermos a necessidade de modelar esses tipos de atributos nós teremos que fazer alguns ajustes veremos esses ajustes
como fazer esses ajustes nas nossas próximas aos valores num são usados para representar valores desconhecidos ou que não se aplicam a um determinado tributo naquela determinada dupla então nós também seremos exemplos de uso de valores mundo decorrer da disciplina mas é importante que nós já saibamos que o não significa desconhecido com não aplicável nós não temos nenhuma informação sobre o valor de um determinado tributo então nós podemos usar o valor num bom modelo relacional ele possui uma série de restrições todas essas restrições elas implicam em regras que precisam ser seguidas na manipulação dos dados no
sgbd essas restrições do modelo relacional elas são garantidas pelo sistema gerenciador de banco de dados como nós vimos na nossa primeira aula o sistema gerenciador de banco de dados e implementa uma série de funções que há nos auxilia a manter a consistência dos dados a primeira restrição que nós vamos ver a restrição de domínio e significa especificar que o valor de cada tributo cada tributo ar deve ser primeiro de tudo um valor atômico e ele deve estar dentro de um domínio especificado para aquele atributo bom outra restrição importante é a restrição de chave ela é
muito parecida com a questão da do atributo chave do modelo de idade relacionamento há uma correspondência entre eles que nós veremos nas próximas aulas mas por enquanto vamos entender o que significa restrição de sabino modelo relacional então por definição todos os elementos de um conjunto são de cintos isso significa que todas as duplas de uma relação precisam necessariamente ser diferentes entre si ou seja o gosto pelas quais quer então natura tem uma dupla d2 matrícula d2 mato para ter três ou duas tumbas quaisquer de uma relação não podem ter a mesma combinação de valores para
todos os seus atributos então nós temos que ter um conjunto de atributos pode ser um dois três vários atributos nós precisamos ter um conjunto de atributos cujos valores diferenciados de uma dupla um para uma dupla 2 ou seja nós temos funcionários na nossa empresa e cadastramos informações sobre eles o funcionário é necessariamente diferente do outro em pelo menos um atributo que o discreto e aí nós temos o conceito de super chás qualquer conjunto de atributos sk pode ser considerado uma super chave a desde que nós com nós possamos verificar que de uma dupla um para
uma dupla 2 os valores nesses subconjuntos de atributos são diferentes toda relação tem pelo menos uma super chave que é todos os seus atributos então pelo menos se nós colocarmos nós considerarmos todos os atributos que escrevem um funcionário e todos os atributos que descrevem o outro haverá algumas diferenças uma super sabe ela pode ter atributos redundantes então vamos olhar aqui pra esse exemplo eu tenho aqui o funcionário o esquema dele diz que eu tenho e dentes nome endereço salário e data de nascimento se nós considerarmos apenas o atributo evidente que o identificador nós não estaremos
usando nós estaremos fazendo menção a um atributo que diferencia um empregado do outro então não haverá na nossa relação na nossa tabela duas duplas com valor igual para o atributo identificador é por cada funcionário tem o seu próprio identificador bom então nós podemos é dizer que qualquer combinação de atributos todos eles somente os quatro primeiros somente os três primeiros ou somente os dois primeiros são considerados super chave dessa nossa relação funcionário porque incluindo o atributo e dentes nós sempre teremos duas duplas diferentes e temos os seus valores e aí nós podemos definir o conceito de
chave a chave é na realidade uma super sabe dr sem atributos redonda o que significa dizer que aqui no nosso no nosso esquema funcionário apenas usar um subconjunto de um atributo o identificador significa que nós temos uma estabelecida uma chave pois apenas ele e identifica funcionários identificador composto com o nome é uma pensar por que esse conjunto de atributos ele os valores desse conjunto de atributos não vai se repetir em duas turmas diferentes porém eu não preciso do nome para identificar para diferenciar dois funcionários pois eu sei que o identificador é suficiente eu sei que
não tem dois funcionários com o mesmo identificador então nós dizemos que é evidente é um conjunto mínimo que é capaz de diferenciar duas duplas dentro de uma relação a partir do conceito de chave nós vamos então definir três novos conceitos sabe candidata sob primária chave nunca sabe candidata em geral o esquema r o esquema de uma relação pode ter mais de uma chave ele pode ter mais de um sub-conjunto mínimo que identifica a duas entidades duas duas duplas dentro dessa relação todas essas chaves são chamadas chave candidata é comum escolher uma das chaves candidatas para
ser dita chave primária da relação primária ela vai ter uma série de implicações futuras o nosso estudo de banco de dados mas por enquanto basta que nós saibamos que uma das aves candidatas será especificada pelo projetista de bancos de dados como senhas área primária de uma relação e por fim o restante das sábias candidatas são ditas sabe o que é bom a nós temos mais uma restrição importante e modelo relacional que diz respeito à integridade de entidades o que significa a integridade de entidades significa que nenhum dupla da minha relação poderá assumir o valor nulo
no atributo que foi escolhido como sabe primária porque a chave primária é o atributo mais importante para identificar um dado dentro de uma relação dentro de uma relação que está dentro de um banco de dados se nós não sabemos esse valor nós vamos ter um problema então para garantir a consistência dos dados a reflexão de integridade de entidade proíbe que seja cadastrado valor num numa chave primária e o sgb de garantir à essa restrição para nós em mais uma outra restrição extremamente importante é a integridade referencial especificada entre duas relações ea usada para manter a
consistência entre as duplas de duas relações então a tutela de uma relação à que referencia uma relação b deve fazer referência a uma dupla existentes na relação de então por exemplo supõe que nós tenhamos um funcionário que trabalha para um departamento nós temos a relação ao funcionário fazendo uma referência à relação departamento funcionário trabalha para um departamento este departamento para o qual ele trabalha ao qual ele faz referência precisa necessariamente ser no nosso sistema eu não posso colocar um funcionário trabalhando para um departamento não posso cadastrar uma informação que diz que meu funcionário trabalha para
um departamento para este departamento não existe no sistema isso causaria uma inconsistência de dados então a integridade referencial implementada no modelo relacional para garantirem a garantir que essa consistência aconteça então nós temos para implementar é esse conceito a saab estrangeira considere dois esquemas em relação a r1 e r2 e um conjunto de atributos que nós vamos chamar de é ficar no esquema é rio é uma sabe estrangeira de r eo que referencia r 2 nós temos aqui duas restrições que precisam ser garantidas vamos dar uma olhada nela para depois nós passarmos para alguns exemplos os
atributos em xavi estrangeira tem o mesmo domínio dos atributos de uma chave primária da relação r2 que a relação referenciada e o valor da chave estrangeira nato placa tem um de um estado de relação r 1 que é a relação que faz a referência ou ocorre como o valor de chave estrangeira em uma outra dupla lá na relação referenciada ou é um valor nulo então nós temos aqui ato pela 1 na no subconjunto sabe estrangeira sendo necessariamente igual ato pela 2 no subconjuntos chave primária sendo que atua pela um é da relação que faz referência
e atua 2 a relação referenciada então nós temos aqui um modelo relacional nós vamos olhar para alguns aspectos desse modelo e com o exercício vocês verão é expressar o entendimento sobre esse modelo então olha só nós temos a relação funcionário ea relação departamento relação ao funcionário possui todos esses atributos incluindo um atributo identificador chamado de dente esse é o atributo chave primária da a ação funcionários depois nós temos a relação departamento que possui todos esses atributos sendo que aqui número foi escolhido como xavi primário as aves primárias estão grifadas nesse esquema gráfico agora observe em
que na relação funcionário existe um atributo chamado b num tributo é na realidade uma referência observem que há uma indicação de que é uma referência ao número sabe primária de departamento então o que nós podemos entender disso denuncia número de departamento é um atributo originalmente definido para o departamento mas ele aparece na relação funcionário como uma chave e estrangeira que significa ser uma um ponteiro uma indicação de que um determinado funcionário se relaciona com um determinado de pargo lento uma vez que o funcionário se relacionará com um departamento o valor que esse atributo assumir necessariamente
precisa ser um valor existente se na tabela na relação o departamento por isso nós chamamos isso de e se essa restrição de restrição de integridade referencial nós precisamos garantir que a referência que a relação funcionário faz para relação departamento é consistente estamos fazendo referência a um departamento que já existe na relação o departamento bom existem várias dessas situações neste modelo a eu sugiro que vocês analisem com cuidado esse modelo resolva os exercícios que serão disponibilizados em relação a esse assunto esse assunto de extrema importância dentro de modelo relacional com isso nós finalizamos a quinta a
aula onde tratamos de modelos relacionais características formalizações e restrições e eu também sugiro que vocês até essa bibliografia básica da disciplina para entender um pouco melhor [Música] [Música] [Música]