Base de dados Uso de várias tabelas 1 Relação de 1:N Já vimos que o armazenamento de informação se feito numa tabela pode obrigas a repetir informação 2 Relação de 1:N Vamos supor que num “pequeno negócio” é guardada informação sobre as compras dos clientes 3 Relação de 1:N 4 Relação de 1:N Repete-se muita informação No entanto, se eu dividir a informação por duas tabelas, apenas preciso de repetir o código do cliente 5 Relação de 1:N Clientes: 6 Relação de 1:N Compras: 7 Relação de 1:N • Diz-se “Relação 1:N” porque • A cada registo de uma tabela podem corresponder vários registos na outra tabela • Também se diz “Relação de um para vários” 8 Relação de 1:N • A cada Cliente correspondem várias Compras (de 0 a muitas) • A cada Compra só corresponde 1 cliente (sempre 1 cliente) 9 Consulta de Selecção • Partindo de uma Compra, eu preciso saber quem foi o cliente • Saber as suas características • No Excel usaria o Vlookup. 10 Consulta de Selecção • No Access vou usar uma consulta de selecção Select Query • Em forma de desenho (Design View) coloco as duas tabelas 11 Consulta de Selecção 12 Consulta de Selecção • E agora tenho que explicitar que existe um campo que é comum: O campo chave dos Clientes Selecciono na tabela Clientes o campo Codigo e, sem largar o ‘botão direito’, arrasto até ao campo correspondente CodCli 13 Consulta de Selecção 14 Consulta de Selecção • NOTA IMPORTANTE • Quando desenho as tabelas, os campos a ligar têm de ser do mesmo “data type” 15 Consulta de Selecção • Agora é como se tivesse a tabela “original” com os campos todos originais • Tenho que colocar em baixo os que quero visualizar 16 Consulta de Selecção 17 Consulta de Selecção • Só mandei mostrar 5 campos • Agora posso “correr” a consulta carregando no ponto de exclamação ou fazendo Query+Run 18 Consulta de Selecção 19 Consulta de Selecção • As repetições são apenas “virtuais” • Se eu alterar o nome de um cliente, a alteração repercute-se em todos os sítios visíveis 20 Consulta de Selecção • Agora posso aplicar condições à globalidade da informação • Q1. Compras do cliente 1251 21 Consulta de Selecção 22 Consulta de Selecção • Q2. Compras de valor maior que 500€ realizadas em 2007 vistas de forma descendente? 23 Consulta de Selecção 24 Consulta de Selecção • Q3. Compras de valor maior que 500€ realizadas em 2007 por Clientes do Porto? 25 Consulta de Selecção 26 Consulta de Selecção • Q4. Compras menor que 150€ realizadas por clientes cujo nome começa por A e o Codigo acaba em 5 • ou • Compras de clientes de Gaia cujo Codigo acaba em 6 27 Consulta de Selecção 28 Consulta de Selecção • Fazer o download da base de dados e fazer as consultas 29