MIC PERNAMBUCO SEGUNDA FASE / S2B Banco de Dados Diego von Söhsten Microsoft Certified Technology Specialist Analista de Desenvolvimento Allen Informática Recife [email protected] twitter.com/diegovonsohsten MODELAGEM DE DADOS: INTRODUÇÃO O que é modelagem de dados? Entidade e atributos Relacionamento Atributos Chaves Modelagem conceitual é uma fase importante no projeto de uma aplicação de base de dados bem sucedida. Ela baseia-se na percepção de um universo constituído por um grupo básico de objetos chamado entidades, e por relacionamentos entre elas. Existem ferramentas que auxiliam na construção destes modelos, porém são totalmente dependentes de nosso conhecimento das regras de negocio. Cenário de negócio comum: Necessidade de armazenar os estados e as cidades brasileiras. Construir as tabelas, de forma que armazenem a unidade federativa, descrição do estado e os nomes das cidades e seus respectivos estados. Validar os estados, não permitindo cadastrar cidades para estados que não estão devidamente cadastrados. Uma entidade é um objeto que existe e é distinguível de outros objetos. Uma entidade pode ser um objeto com uma existência física (entidade concreta) – um empregado, pessoa, carro, casa em particular – ou conceitual (entidade abstrata) – uma companhia, um emprego, um curso S2B. Cada entidade tem atributos – propriedades particulares que a descrevem. Por exemplo, uma entidade Estado pode ser descrita pelos atributos “Unidade Federativa”, “Nome” e “Extensão”. Aplicando isso no modelo de dados, temos: TB_ESTADOS UF Descrição SP São Paulo RJ Rio de Janeiro MG Minas Gerais Atributos de TB_ESTADOS Entidade TB_ESTADOS O relacionamento é a forma de unir características recíprocas entre duas entidades. Por exemplo: Estados e Cidades: sempre que cadastramos uma cidade, podemos atribuir a qual estado ela pertence. Para isso, podemos estabelecer um relacionamento, já que um estado pode ter muitas cidades e uma cidade pode ter apenas um único estado. Percebe-se, por exemplo, que a unidade federativa é um atributo comum as duas entidades, relacionando a informação. Cardinalidade é uma restrição que expressa o número de entidades ao qual outra entidade pode estar associada por meio de um relacionamento. Alguns tipos de cardinalidade podem ser observados: 1:1 Um para Um: um registro em A está associado com no máximo um registro em B; e vice-versa. 1:N Um para Muitos: um registro em A está associado a qualquer número de registros em B, enquanto os registros em B estão associados com no máximo um registro em A. N:N Muitos para Muitos: um registro em A está associado a qualquer número de registro em B, e vice-versa. OBS: Ao escrever o modelo físico, esta cardinalidade se transforma em duas cardinalidades 1:N 1:N = Chave primária da tabela TB_ESTADOS UF TB_CIDADES Descrição COD Descrição SP São Paulo RJ Rio de Janeiro MG Minas Gerais 01 02 03 UF Bauru SP Montes ClarosMG Belo HorizonteMG N 1 Possui Um estado se associa a N cidades! São atributos que possuem a propriedade de singularidade de informação, que permite identificar um registro inserido na tabela. Exemplo: TB_Estados, campos UF (Unidade Federativa), Dsc (Descrição/Nome do Estado). 1) UF pode ser a chave desta tabela, já que nunca será repetida e tem como característica ser um dado representativo para Estado. 2) É um dado curto e preciso, propriedade importante para uma chave. 3) Pode ser inserido seqüencialmente, já que temos controle sobre a informação. 4) É um campo utilizado nas pesquisas. LAB: CRIANDO UM BANCO DE DADOS PARA ARMAZENAR OS ALUNOS E AS TURMAS DE UMA FACULDADE Abrindo o SQL Server Management Studio Criando as tabelas pela interface gráfica. Criando os relacionamentos por interface gráfica. Criando o diagrama de dados. Salvando as alterações Inserindo dados para checar as mudanças.