Luiz Carlos d´Oleron SJCP Java Avançado Conceitos de aplicações que acessam banco de dados.

Slides:



Advertisements
Similar presentations
DML + subconsulta. COMBINAÇÃO DML INSERT UPDATE DELETE SUBCONSULTA SELECT WHERE atributo IN* (SELECT...)
Advertisements

VERB THERE TO BE(PRESENT TENSE)
VERB TO BE. VERB TO BE O verbo to be significa, ao mesmo tempo, ser e estar.
ADO.Net Modelo para acesso a dados nas aplicação.Net Componentes: DataSet.Net Data providers: Connection Command DataReader DataAdapter.
Gotas de Crystal So this is Christmas Então já é Natal And what have you done E o que você tem feito Another year over Um outro ano se encerra And new.
ESCALONAMENTO DE TAREFAS
Aula 1 The concept of genre, verb to be, there to be, pronoun it.
2.4 Bases de Dados Estudo de Caso. Caso: Caixa Eletrônico Caixa Eletrônico com acesso à Base de Dados; Cada cliente possui:  Um número de cliente  Uma.
PhD, University of Toronto Positioning Portuguese-Canadian youth as inheritors of & investors in contested ethnolinguistic markets:
No outono de 1982, nos EUA iniciou-se o Marriage Ministries lnternational, através do casal Mike e Marilyn Phillipps, que, depois de se reconciliarem,
Exercício de Interfaces O código terá erro de compilação ou executará normalmente?
WH- QUESTIONS ANDRESSA RIBEIRO DO AMARAL. WH - QUESTIONS WH- QUESTIONS são perguntas iniciadas por wh: WHAT (O que): What are they doing? Why (Por que):
(SER /ESTAR) I am Donald. I am Daisy. I am Minnie. I am Mickey. I am Goofy. We are friends.
Oficina: Modelagem de Dados
Capítulo 4: Nível de Rede
Optimização Numérica Modelação de problemas 1ª aula teórico-prática 11/Setembro/2006.
Computação Distribuída Serviços na Web XML, WSDL, SOAP, UDDI.
FEP 114 – Aula 3b. Objetivo: Determinar o intervalo de temperatura em que os calorímetros utilizados podem ser considerados ideais. Determinar o calor.
Administração 2°semestre - Aula 2 Classificação dos Sistemas de Informação.
DABPMaio 2009 Cálculo de uma poligonal Universidade do Algarve Instituto Superior de Engenharia Licenciatura em Engenharia Topográfica Disciplina de Topografia.
Algoritmos de Busca Heurísticos. Sumario Heurísticos –Best-first –Greedy best-first –A * –Algoritmos de Busca local –Hill-climbing Metaheuristicos –Simulated.
1 Até aqui a nossa discussão dos fenómenos eléctricos concentraram-se em cargas em repouso CORRENTE ELÉCTRICA Consideraremos agora as situações que envolvem.
Conceitos Fundamentais: da Moral à Bioética José Roberto Goldim.
Tecnologias de Informação Geográfica DGPR Sessões 01 Abr.A1. Fundamentos de Sistemas de Informação Geográfica. Síntese 15 Abr.A2. Os Sistemas de Informação.
1 Exemplo: Velocidade de Migração num Fio de Cobre Então por que uma luz quando ligada acende instantaneamente? O campo eléctrico que impulsiona os electrões.
Arquitectura Tecnológica dos Sistemas de Informação Enterprise Architecture Validation Pedro da Silva - Nº João Jesus – Nº Nuno Dias – Nº
 Fundada em 1998, a TIME CONSULTORIA assessora Empresas de portes e segmentos diversificados.  A Sede está localizada em São José dos Campos – SP; 
Working Together for our English Learners at McKinley Laurie Burgos 7 th grade Bilingual Resource Teacher McKinley Middle School March 16, 2012.
Língua Inglesa 6º ano fundamental Verb to be: present tense/short and full answers.
Análise de Conteúdo e Indexação CLASSIFICAÇÃO - acto de agrupar coisas ou conceitos que tenham algo em comum; conjunto de regras que presidem à ordenação,
Reprogramando os modelos mentaisReprogramando os modelos mentais para melhoria do desempenho humano para melhoria do desempenho humano “Se o pensamento.
Operações de Marketing. Competências Subsidiar a criação de estratégias de inovação em produtos e serviços. Subsidiar a criação e desenvolvimento de precificação,
Herzog Zwei Herzog Zwei Herzog Zwei é um jogo exclusivo de Mega drive/Sega Genesis desenvolvido pela Technosoft, publicado em É um jogo de.
Cada uma das seguintes figuras representa uma circunferência e um polígono O polígono está inscrito na circunferência O polígono não está inscrito na.
Sistemas Operativos Multiprogramação; Multiplexação; Memória Física; Memória virtual; Trabalho/Job - Processo/Process/Task - Thread.
Sistemas Operativos Introdução. Sistema Operativo - definição De maneira menos informal podemos definir Sistema Operativo, como sendo o Software fundamental.
Sistemas Operativos Gestão de periféricos Varrimentos vs Interrupções Cache.
COMPONENTES BÁSICOS DE UM COMPUTADOR Disco-Rígido – Fonte - Motherboard - O disco rígido ou HD (Hard Disk) - Estrutura - Placa lógica (hard drive logic.
COMPONENTES BÁSICOS DE UM COMPUTADOR Processador – Memória – Bus/Barramento – Periféricos Carlos Pereira 2014/2015.
Arquitetura do SET de instruções Instruction SET CISC vs RISC What’s assembly as to do with it?
Arduino CHIP. Pins analógicos – (1 de 2) Recordar: Analog In - pin 0 ao 5 – analog to digital Recebe sinais analógicos e transforma-os em sinais digitais.
Arduino CHIP Hardware -Pins Digitais - Pins 0 ao 13Pins Digitais - Pins 0 ao 13 -Pins pulse modulation ~Pins Pins 0 e 1 –
COMPONENTES BÁSICOS DE UM COMPUTADOR Processador – Memória – Bus/Barramento – Periféricos.
Fonte de alimentação. 3 Constituição da fonte 4 Tipos de Fontes 5 Fontes Lineares 6 Fonte Chaveada 8 a 13 As fontes de alimentação.
Módulo 1 – Efeitos da radiação na água
Qual é a diferença entre fonética e fonologia?. Fonética Estuda a natureza física da produção e da percepção dos sons da fala humana. Preocupa-se com.
HCA - 10º ANO: A CULTURA DA ÁGORA ESCULTURA GREGA: ESTATUÁRIA PROF. PEDRO XAVIER ESAAA.
Relative clauses I (who/which/that
How to Write a Testable Question
Alceu Ferreira Júnior R4 TRAUMA. INTRODUÇÃO Lesões do anel pélvico Fraturas sacrais - grande variabilidade Podem diferenciar-se em gravidade: simples.
Skynet Infocom A solução para sua Empresa Integrantes do Grupo Felipe Morales Igor Oliveira.
QUIMIOMETRIA I: COMO FAZER EXPERIMENTOS Prof. Dr. Clecio Dantas (UEMA) CAXIAS, 2015.
Comunicar data, local e modo de acesso ou razões da recusa ou que não possui 20 dias ou até +10 (com justificativa) Art. 11 da LAI - Prazos O que pode.
Índice Interacção radiação - matéria na atmosfera Aveiro 2008.
ESAPL IPVC Licenciatura em Engenharia do Ambiente e dos Recursos Rurais Economia Ambiental.
O Mercado  Os Economistas estudam e analisam o funcionamento de uma série de instituições, no intuito de determinarem a forma como são usados os recursos.
Alunos(a): Thalynny Rabelo Thaynara Maia Wilson Carvalho INTRODUÇÃO À COMPUTAÇÃO GRÁFICA.
Eletricidade Professor: Roney Sousa
Placa Mãe Professor Roney sousa. O que é a Placa Mãe É a maior e mais importante placa de nosso computador, onde todos os demais componentes são ligados.
OLNEY JONER A estação de solda é uma ferramenta essencial em bancadas eletrônicas, onde sua utilização é destinada.
PUC por um Semestre - PIUES Termoquímica Calor de reação.
Psicologia Grupo: Allyne Mendes Amanda Lima George Nascimento Maria Lira Mirian Alves Luaryanne.
Guija, Julho de 2019 Mabalane AP– Planificação Detalhada Sessão – – Passo 4 1.
Resolução dos exercícios Equilíbrios Químicos Prof. Lucas Rodrigo Custódio sites.google.com/prod/view/proflucasrodrigo.
CELULAR NA EDUCAÇÃO BÁSICA: RAZÕES PARA DIZER SIM Palloma Tayná Landim Gontijo - Letras TECNÓFILO.
VALOR AGREGADO Para agregar valor, deve-se ir além, inovar, ser criativo, ousar e correr o risco de ser imitado e de não poder cobrar mais pelo que faz.
Análise Combinatória Luciano Garim. Princípio Fundamental da Contagem Este princípio permite quantificar situações ou casos de um determinado evento.
Presentation transcript:

Luiz Carlos d´Oleron SJCP Java Avançado Conceitos de aplicações que acessam banco de dados

Luiz Carlos d´Oleron – O que é um Banco de Dados? É um software capaz de armazenar, atualizar e disponibilizar, de forma segura e eficiente, conjuntos de dados Há vários tipos de BD: Relacionais, Orientado a Objetos, etc... Nas aplicações de hoje em dia, se sobressai o uso de banco de dados relacionais, que são aquele que conhecem e fazem valer leis que regem as relações entre os dados

Luiz Carlos d´Oleron – O que é um Banco de Dados? Um BD relacional é constituído de várias databases, que são espécie de ilhas de dados DataBases são compostas de tabelas, view e podem ser acessadas por vários usuários (de formas diferentes!) Quando JDBC se conecta a um banco de dados relacional, ele faz isso acessando especificamente uma determinada database No nosso curso, usaremos um banco de dados relacional MySQL

Luiz Carlos d´Oleron – O que é uma tabela? Tabela, ou entidade, é uma estrutura que define como os dados serão armazenados Por exemplo, nossa tabela Tab_Clientes

Luiz Carlos d´Oleron – O que é uma tabela? Tabelas possuem nomes únicos dentro da database Ela é composta de campos (conhecidos também como atributos) Esses campos possuem características. Essas características dependem do tipo do campo Deve existir, em toda tabela, um campo especial, chamado de Chave Primária (primary key)

Luiz Carlos d´Oleron – O que é uma tabela? Costumamos dizer que uma tabela possui vários registro, cada registro possui dados no formato dos campos da tabela

Luiz Carlos d´Oleron – Chave Primária – Primary Key Conceito essencial para o entendimento do funcionamento e uso de banco de dados Dentro de uma tabela, não poderá haver dois registro com o mesmo valor de PK Uma PK identifica unicamente um registro Podem ser simples ou composta

Luiz Carlos d´Oleron – Chave Primária – Primary Key Valores de negócio, como nº de CPF, RG ou telefone não devem ser usados como PK, mesmo que sejam “Chaves de Negócio” No nosso exemplo, a PK é o campo código Assim, não existe dois clientes com o mesmo código Campos auto-increment são ótimas chaves Chaves primárias otimizam as consultas ao banco, simplificando o trabalho da aplicação e do BD Toda tabela deve ter uma!

Luiz Carlos d´Oleron – Relacionamentos Uma tabela pode se relacionar com outra Por exemplo, podemos armazenar todos os números de telefone dos nossos clientes Como um cliente pode possuir vários números de telefone, temos um relacionamento do tipo 1-para-N (ou 1-para-muitos) Como exemplo, implementamos isso com uma tabela nova chamada tab_telefone

Luiz Carlos d´Oleron – Relacionamentos A tab_telefone é uma tabela como outra qualquer Seus campos podem ser de qualquer tipo Entretanto, o banco precisa saber como relacionar um determinado telefone a um determinado cliente Isto é feito através das Chaves Estrangeiras (Forein Key - FK)

Luiz Carlos d´Oleron – Chave Estrangeira É um campo de um registro que identifica um outro registro de outra tabela. Em uma tabela, é possível ter vários registros com o mesmo valor para uma chave estrangeira Um tabela pode possuir várias FK O valor de uma FK é o valor da PK do registro associado na outra tabela

Luiz Carlos d´Oleron – Chave Estrangeira 1 N

Luiz Carlos d´Oleron – Relacionamentos Existem relacionamentos do tipo um-para-um, um-para-muitos e muitos- para-muitos O banco pode ter ferramentas para garantir a “Integridade Referencial” Por exemplo, o banco pode garantir que não exista nunca um telefone associado a um cliente que não exista Existem umas ferramentas de cascade que devem ser usadas com cuidados Isto pode ser feito também na aplicação, pode ser feito no BD e na aplicação (ruim), ou em nenhum dos dois (péssimo)

Luiz Carlos d´Oleron – Exemplo: TesteRelacionamento.java A principal diferença desse exemplo par ao anterior está na consulta SQL: A diferença aqui é a cláusula INNER JOIN

Luiz Carlos d´Oleron – TesteRelacionamento.java INNER JOIN serve para avisar ao banco de dados como ele deve relacionar a tabela tab_clientes à tabela tab_telefone Várias tabelas podem ser relacionadas dentro de uma mesma instrução INNER JOIN deteriora enormemente a performance do banco, use com cuidado Normalmente, é possível quebra uma instrução com INNER JOIN em várias outras, melhorando a performance da aplicação

Luiz Carlos d´Oleron – TesteRelacionamento.java A forma de acessar os campos do registro permaneceu inalterada Obviamente, aumentamos a quantidade de campos

Luiz Carlos d´Oleron – TesteRelacionamento.java Criamos um método também somente para conectar. Isto é uma boa prática e facilitará nosso trabalho daqui para frente

Luiz Carlos d´Oleron – TesteRelacionamento.java Atente para a exceção java.sql.SQLException Os métodos da API JDBC normalmente lançam java.sql.SQLException para avisar sobre problemas na infra-estrutura ou na forma da aplicação acessar o banco Podemos lançar também java.sql.SQLException, de forma a deixar o código mais homogêneo.