Administração de Banco de Dados
Fundamentos de Banco de Dados
Programação de Banco de Dados
Prof. Geovane Marcondes
E-mail: [email protected]
Formação
Graduado em Gestão da Tecnologia da Informação
Fatec – Faculdade de Tecnologia do Estado de SP
Pós-Graduando Docência no Ensino Superior
Universidade Cidade de São Paulo
Vivência Profissional
• Coordenador de capacitação profissional – 2 anos
• Análise e desenvolvimento de sistemas - 13 anos
• Administrador de Banco de Dados – 3 anos
• Professor de T.I. Projeto de inclusão digital 3 anos
• Analista Fiscal e contábil – 3 anos
• Analista de Mis (Management Information System) 2 anos
Apresentação
EMENTA
MÓDULO – Fundamento de Banco de Dados - Conhecimentos
√ Visão Geral e Instalação do Sql Server
√ SQL Server Management Studio
√ Análise e criação de Banco de Dados
√ Segurança
√ Criação de índices e Diagramação do banco de dados
EMENTA
MÓDULO – Fundamento de Banco de Dados – Capacidades Técnicas
√ Instalar sistemas gerenciadores de banco de dados
√ Analisar banco de dados
√ Criar banco de dados
√ Implementar segurança em bancos de dados
√ Definir tabelas, criar índices
√ Criar diagramas de banco de dados
√ Realizar backup e recuperação de dados em bancos de dados
√ Realizar manutenção de banco de dados
EMENTA
MÓDULO – Programação de Banco de Dados
√ Trabalhando com os dados
√ Criação de visualizações
√ Procedimentos Armazenados
√ Fundamentos básicos do T-SQL
√ T-SQL avançado
√ Gatilhos
√ Reporting Services do SQL Server
EMENTA
MÓDULO – Programação de Banco de Dados – Capacidades Técnicas
√ Trabalhar com dados
√ Criação de visualizações
√ Utilizar procedimentos Armazenados
√ Aplicar Fundamentos básicos do T-SQL
√ Aplicar T-SQL avançado
√ Utilizar Gatilhos
√ Criar relatórios utilizando o Reporting Services
O que é SQL?
O SQLServer é um sistema de gerenciamento de banco de dados (SGBD), que utiliza a linguagem SQL (Linguagem de Consulta Estruturada, do inglês Structured Query Language) como interface.História dos SGDBs
Anos 60 utilizados sistemas (ISAM e VSAM), usados até hoje.Anos 70 Gerenciadores de Bancos de dados de rede. Desapareceram nos anos 90.Anos 80 SGBDRs (Oracle, DB2, SQLServer)Anos 90 SGBDOR (Oracle, DB2, PostgreSQL e Informix)
SGBD ?
SGBD é Composto por programas de gerenciamento, armazenamento e acesso aos dados,com a finalidade de tornar ágil e eficiente a manipulação dos dados.
Dicionário de dados metadados,dados sobre os dados, ou seja, informações sobre aestrutura dos bancos de dados (nomes de tabelas, de campos, tipos de dados, etc).
Simplificando temos (SQL SERVER), em termos de estrutura:
- O SGBD é formado por bancos de dados, tabelas, usuários e alguns programas auxiliares;
- Um banco de dados é formado pelos esquemas e linguagens;
- Um esquema é formado por funções de agrupamento, funções do usuário, triggers, procedures, seqüências, tabelas e views;
-Tabelas são formadas por campos, constraints, índices e triggers.
- Em termos de dados uma tabela é formada por registros e campos.
O QUE É DBA ?
DBA (Database Administrator), “ Administrador de Banco de Dados”
Quais as funções :
• Definir e modificar esquemas, estruturas de armazenamento e métodos de acesso.• Liberar privilégios de Acesso ao Banco de Dados.• Especificação de integridade.
Conhecendo a estrutura do SQLSERVER !
Banco de Dados
Histórico, Objetivos e visão Geral de uma Banco de Dados
20
Um banco de dados pode ser criado e mantido por um conjunto de aplicações desenvolvidas especialmente para esta tarefa ou por um “Sistema Gerenciador de Banco de Dados” (SGBD).
Um SGBD permite aos usuários criarem e manipularem bancos de dados de propósito geral.
O conjunto formado por um banco de dados mais as aplicações que manipulam o mesmo é chamado de “Sistema de Banco de Dados”.
1. Conceitos
21
Dados, Informação e Conhecimento
Dados Informação Conhecimento
Simples observações sobre o estado do mundo
Dados dotados de relevância e propósito
Informação valiosa da mente humana
Inclui reflexão, síntese, contexto
Facilmente estruturado; Facilmente obtido por
máquinas; Freqüentemente
quantificado; Facilmente transferível.
Requer unidade de análise;
Exige consenso em relação ao significado;
Exige necessariamente a mediação humana.
De difícil estruturação; De difícil captura em
máquinas ; Freqüentemente tácito ; De difícil transferência.
FONTE: Davenport e Prusak (1998, p.18)
1. Conceitos
22
O contexto atual se caracteriza por mudanças aceleradas nos mercados, nas tecnologias e nas formas organizacionais e a capacidade de gerar e absorver inovações vem sendo considerada, mais do que nunca, crucial para que um agente econômico se torne competitivo.
Entretanto, para acompanhar as rápidas mudanças em curso, torna-se de extrema relevância a aquisição de novas capacitações e conhecimentos, o que significa intensificar a capacidade de indivíduos, empresas, países e regiões de aprender e transformar esse aprendizado em fator de competitividade para os mesmos. Por esse motivo, vem-se denominando esta fase como a da Economia Baseada no Conhecimento ou, mais especificamente, Baseada no Aprendizado.
2. Relevância do BD
23
Os Bancos de Dados fazem parte de nosso cotidiano: estão nos bancos, supermercados, hospitais, Internet, escolas, enfim, em toda a parte.
Se os dados são a matéria prima da informação, e conseqüentemente, ao novos conhecimentos, e os Banco de Dados são seus repositórios; torna-se “vital” que o processo de projeto-desenvolvimento-implementação-utilização dos mesmos seja estudado com detalhes pelos seus futuros projetistas/usuários.
2. Relevância do BD
24
Evolução dos Primeiros Computadores Os Primeiros Computadores
√ No período de 1945 a 1951, surgem os primeiros computadores em diferentes universidades inglesas e americanas;
√ As primeiras utilizações dos computadores foram militares;
√ No ano de 1951 o computador tem seu primeiro funcionamento comercial;
√ No ano de 1952 - O primeiro uso civil de um computador - nas eleições presidenciais norte-americanas;
√ As décadas de 1950 e 1960 foram marcadas pela evolução do computador, tanto que, em 1967, o mundo ocidental contabilizava cerca de 50.000 computadores em funcionamento, estimados em um valor total de US$ 20 bilhões.
3. História
25
Evolução da Manipulação de Dados pelos Computadores
√ Década de 1950 – Cartões Perfurados Dados lidos por meio de cartões perfurados;
√ Década de 1960 ( até hoje ) Utilização de Sistema de Arquivos integrados em médio magnético
ISAM e VSAM
√ Ano de 1964 – Sistema de Banco de Dados em Redes IDS da Honeywell Information System é lançado
√ Ano de 1965: Sistemas de Banco de Dados Hierárquicos A IBM/Rockwell International IMS - Programa Apollo da Nasa; Em 1969 passa a ser comercializado.
√ De 1960 a 1970 outros inúmeros Sistemas de Bancos de Dados são lançados. Cada qual com seu padrão.
3. História
26
Evolução da Manipulação de Dados pelos Computadores ( Continuação)
A partir da criação da tipografia no século XV por Gutenberg, a forma mais comum de registro de informações tem sido o papel.
Graças a ele hoje temos conhecimento do que se passou na história humana. Foi no papel que o homem “armazenou” seus primeiros dados: documentos, enciclopédias, dicionários, livros, revistas, jornais, entre outros.
Apesar de sua indiscutível utilidade, o registro em papel tem seus inconvenientes: o volume e a dificuldade de localização de um dado
Tomemos como exemplo: um estoque de um grande loja de recebe e despacha diversos produtos diariamente. O nível de dificuldade de manter um registro desta movimentação, ou ainda obter relatórios dos produtos mais vendidos.
Ou ainda fechar uma folha de pagamento de uma empresa com muitos funcionários, totalmente baseada em cartões de ponto e relatórios não automatizados.
3. História
27
• Uma das primeiras forma de registros de informações da era computacional ocorreu em torno de 1884, quando Herman Hollerith patenteou a as fitas de papel perfuradas, posteriormente substituídas pelos cartões de perfurados. Ele também inventou máquinas que as liam e produziam totalizações de dados.
• Em 1889 foi contratado para efetuar o censo dos EUA, a um preço de U$ 0,65 a cada mil cartões processados. Ele levou 2 anos para processar todos os cartões, concluindo que a população era de 56 milhões de pessoas. Faturou U$ 36.400,00. Em 1929 sua empresa foi rebatizada com International Business Machines (IBM).
3. História
28
• Os primeiros computadores surgem no período de 1945 a 1951, em diferentes universidades inglesas e americanas, com 1951 servindo de marco para o primeiro funcionamento comercial dessa invenção.
• As primeiras utilizações dos computadores foram militares, uma vez que sua invenção coincidiu com o término da Segunda Guerra Mundial e o início da Guerra Fria. Outra explicação para o seu uso militar, era a pouca demanda de capacidade de processamento nas aplicações comerciais da época
3. História
29
• O primeiro uso civil de um computador se deu em 1952, nas eleições presidenciais norte-americanas. A rede de televisão CBS-TV utilizou três computadores UNIVAC para prever o resultado da eleição, servindo-se dos resultados das eleições de 1944 e 1948; os computadores acertaram e Eisenhower foi eleito com uma proporção de votos muito próxima da previsão. Esse evento impulsionou o crescimento das aplicações não militares dos computadores
3. História
30
• As décadas de 1950 e 1960 foram marcadas pela evolução do computador, tanto que, em 1967, o mundo ocidental contabilizava cerca de 50.000 computadores em funcionamento, estimados em um valor total de US$ 20 bilhões. Destaque-se que foi muito expressivos nesse período o avanço dos microprocessadores do que os programas (softwares) para computadores.
• Em 1965, Gordon Moore, que no futuro seria um dos sócios da Intel, previu que a capacidade de um microprocessador dobraria anualmente, baseado na projeção da relação preço/desempenho dos microprocessadores dos três anos anteriores. Passados dez anos, a previsão continuou verdadeira Moore então voltou a prever que a capacidade dobraria a cada dois anos. Essa previsão é chamada de Lei de Moore, e continua a se mostrar verdadeira. Até os presentes dias, a cada dezoito meses ocorre uma duplicação da capacidade dos microprocessadores.
3. História
31
Os primeiros Bancos de Dados (BD)
Na década de 1960 os primeiros programas de BD desenvolvidos eram baseados arquivos em disco. Dentre os inconvenientes desta arquitetura destacamos cinco:
• Não havia controle de acesso concorrente de vários usuários;
• Não era possível executar processos de forma simultânea;
• A estrutura do arquivo se encontrava inserida nos códigos aplicativos. Ocasionando uma dependência entre o BD e a aplicação;
• Inconsistência, redundância, dificuldade de acesso e Isolamento de dados;
• Problemas relativos a segurança de dados.
4. BANCO DE DADOS
32
Sistemas Gerenciadores de Bancos de Dados (SGBD)
Na metade final década de 1960 surgiram os primeiros SGBD comerciais. Com eles não era necessário que os aplicativos controlasse a gravação e leitura física dos dados.
Os primeiros SGBDs foram:
• Data Base Task Group (DBTG) da CODASYL;
• Information Management System (IMS) - resultado de um desenvolvimento conjunto das empresas Rockwell, IBM e Caterpillar para apoio ao programa Apollo, da NASA;
• Integrated Data Management System (IDMS) da IBM.
4.1 HISTÓRIA
33
Evolução da Manipulação de Dados pelos Computadores
√ Década de 1950 – Cartões Perfurados Dados lidos por meio de cartões perfurados;
√ Década de 1960 ( até hoje ) Utilização de Sistema de Arquivos integrados em médio magnético
ISAM e VSAM
√ Ano de 1964 – Sistema de Banco de Dados em Redes IDS da Honeywell Information System é lançado
√ Ano de 1965: Sistemas de Banco de Dados Hierárquicos A IBM/Rockwell International IMS - Programa Apollo da Nasa; Em 1969 passa a ser comercializado.
√ De 1960 a 1970 outros inúmeros Sistemas de Bancos de Dados são lançados. Cada qual com seu padrão.
4.1 HISTÓRIA
34
√ Meados da década de 1980: Modelo Relacional começa a ser comercializado
Ex.: DB2,SQL-DS,Oracle,Ingres,Progress,SQL Server, Informix, entre outros.
√ Final de 1980: Modelo Orientado a Objetos e Relacional Estendido (Objeto-Relacional)
BDOO: Vbase, O2, Orion, Gemstone, Jasmine, ObjectStore, entre outrosBDOR: Informix Universal Serve,DB2 Universal DB,Oracle 9i/10g, PostgreSQL,
Ilustra, entre outros.
√ Século XXI O Modelo Relacional e o Objeto-Relacional predominam nos ambientes
corporativos;Aplicações que utilizam VSAM e ISAM são encontradas em algumas empresas
( FOX-Pro,Clipper, entre outros)Os Modelos Orientados a Objetos são amplamente utilizados em aplicações
CAD/CAM, GIS, Científicas, Telecomunicações, Hipertextos, entre outras.
4.1 HISTÓRIA
35
Vantagens da utilização
• Controle de Redundância;
• Compartilhamento de Dados;
• Restrição a Acesso não Autorizado;
• Representação de Relacionamentos Complexos entre Dados;
• Tolerância a Falhas.
5. BANCO DE DADOS RELACIONAL
36
Vantagens da utilização
• Separação entre Programas e Dados
Figura 1. Um ambiente de Sistema de Banco de Dados
5. BANCO DE DADOS RELACIONAL
37
Vantagens da utilização • Controle de Redundância;• Compartilhamento de Dados;• Restrição a Acesso não Autorizado;• Representação de Relacionamentos Complexos
entre Dados;• Padronização;• Manter a Integridade dos dados;• Independência dos dados;• Tolerância a Falhas.
5. BANCO DE DADOS RELACIONAL
38
A Arquitetura dos Sistemas de Banco de Dados
No ano de 1972 foi criado um grupo de estudos para definir uma arquitetura padrão para um sistema de banco de dados, que atendesse às demandas teóricas. O nome desse grupo foi “ANSI/X3/SPARC Study Group on Data Base Management Systems”, e a arquitetura passou a ser conhecida como ANSI/SPARC.
Segundo essa arquitetura, um sistema de banco de dados pode possui três níveis:√ Nível Interno – Responsável pelo armazenamento dos dados; √ Nível Conceitual – Serve de interface entre o primeiro e o terceiro níveis; √ Nível Externo – Responsável pela visualização dos dados por parte do usuário
5. BANCO DE DADOS RELACIONAL
39
A Arquitetura dos Sistemas de Banco de Dados
Fonte: Adaptado de Elmasri e Navathe (2005, p.7) e Date (2003, p.29)
5. BANCO DE DADOS RELACIONAL
40
Projeto de um Sistemas de Banco de Dados
Fonte: Adaptado de Elmasri e Navathe (2005, p.37)
Minimundo
Levantamento e Análise de Requisitos
Requisitos de Dados
Projeto Conceitual
Esquema Conceitual
Projeto Lógico(Mapeamento do Modelo de Dados)
Esquema Lógico (Conceitual)
Projeto Físico
Requisitos Funcionais
Análise Funcional
Específicação de Transação de Alto Nível
Projeto do Programa de Aplicalção
Implementação da Transação
Independente do SGBD
SGBD específico
5. BANCO DE DADOS RELACIONAL
41
6. Bibliografia
BRETON, P. História da Informática. São Paulo: UNESP, 1991.
DAVENPORT, T., PRUSAK, L Ecologia da informação: por que só a tecnologia não basta para o sucesso na era da informação. São Paulo: Futura, 1998.
DATE, C. J. Introdução a sistemas de bancos de dados. 8ª Edição. Rio de Janeiro:Elsevier:2003.
ELMASRI, Ramirez; NAVATHEM, Shamkant B. Sistema de Banco de Dados. 4ª Edição. São Paulo:Perarson Addison Wesley, 2005.
SILBERSCHATZ, Abrahan; KORTH, Henry F.; SUDARSHAN, S. Sistema de Banco de Dados. 3ª Edição. São Paulo:Makron Books, 1999.