Beruflich Dokumente
Kultur Dokumente
APOSTILA DE INTRODUO A
BANCO DE DADOS
NOME_____________________________________________________________
O que informtica?
A informtica o tratamento automtico da informao, por meio da utilizao de tcnicas,
procedimentos e equipamentos adequados, tendo por base os computadores.
a cincia do tratamento racional (especialmente por mquinas automticas) da
informao, considerada como suporte dos conhecimentos humanos e das comunicaes nos
domnios tcnicos, econmicos e sociais.
O que o computador?
O computador o elemento fsico utilizado para o tratamento de dados e obteno da
informao.
uma mquina constituda por uma srie de componentes e circuitos eletrnicos, capaz de
receber, armazenar, processar e transmitir informaes. uma mquina programvel, capaz de
realizar uma grande variedade de tarefas seguindo uma sequncia de comandos de acordo com
o que for especificado.
O computador no faz absolutamente nada sem que lhe seja ordenado fazer.
Tecnologia - A palavra tecnologia vem do tecno = tcnicas+logia = estudo. Seria grosso modo o
estudo das tcnicas, como o prprio nome indica afinal qualquer tcnica criada pelo homem se
enquadra
em
tecnologia.
O domnio do fogo, por exemplo, foi um avano tecnolgico, talvez o maior de todos. A
partir do domnio do fogo, o homem teve acesso fundao do ferro...
A tecnologia surgiu da inteligncia do homem, ele foi construindo coisas para melhorar a
sua vida e isso tecnologia. Hoje em dia ela muito favorvel para nossa vida. O termo
tecnologia pode ser usado para descrever o nvel do conhecimento cientifico matemtico e
tcnico de uma determinada cultura. um termo que envolve o conhecimento tcnico e cientfico
e as ferramentas, processos e materiais criados e/ou utilizados a partir de tal conhecimento,
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
dependendo do contexto a tecnologia pode ser tudo pra nossa vida melhorar. A tecnologia de
uma forma geral o encontro entre a cincia e a engenharia.
Computador: mquina composta de um conjunto de partes eletrnicas e eletromecnicas capaz
de receber, armazenar, tratar e produzir informaes de forma automtica, com grande rapidez e
preciso. um instrumento para agilizar o tratamento da informao.
A tecnologia de computadores fez um progresso incrvel nos aproximadamente 55 anos
desde que foi criado o primeiro computador; Preos caram, a velocidade de processamento
aumentou e armazenar grandes massas de dados a baixo custo j realidade;
Durante a dcada de 70, o desempenho dos computadores melhorou cerca de 25% a 30% ao
ano.
Com a utilizao de circuitos integrados nos microcomputadores levou a uma maior otimizao
(35% ao ano de desempenho);
Houve uma queda no desenvolvimento de sistemas utilizando linguagem Assembly
(linguagem de mquina) e aumento da utilizao de sistemas bsicos padronizados (Unix, Linux)
e automaticamente novas arquiteturas foram se consagrando comercialmente; Ao longo do
tempo, portanto, a tecnologia e os estilos usados na construo de computadores apresentam
pontos comuns e permitem uma classificao dos computadores em geraes.
Caractersticas fundamentais do computador
Anotaes
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________.
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
Para fixar
1. Escreva com suas palavras o que um computador e o que informtica.
Computador integrado numrico eletrnico foi o primeiro computador digital eletrnico de grande
escala. O ENIAC comeou a ser desenvolvido em 1946 durante a II Guerra Mundial para
computar trajetrias tticas que exigissem conhecimento substancial em matemtica, mas s se
tornou operacional aps o final da guerra.
Pesava 30 Toneladas;
Esta mquina no tinha sistema operacional e seu funcionamento era parecido com
uma calculadora simples de hoje. O ENIAC, assim como uma calculadora, tinha de ser
operado manualmente.
A calculadora efetua os clculos a partir das teclas pressionadas, fazendo interao direta com o
hardware, no qual era preciso conectar fios, rels e sequncias de chaves para que se
determinasse a tarefa a ser executada. A cada tarefa diferente o processo deveria ser refeito. A
resposta era dada por uma sequncia de lmpadas. A nica forma de armazenar dados era
atravs de cartes perfurados.
Esta Gerao foi originada pela revoluo dos Transistores os quais substituram as volumosas
vlvulas. Houve uma enorme diminuio em cabos e fios, tendo em vista que cada transistor
substitua dezenas de vlvulas. Desta maneira os computadores tornaram-se consideravelmente
menores e devido a isso, muito mais velozes. O computador comea a ser utilizado nas grandes
empresas. Projetos foram implementados, baseados na utilizao de transistores, houve grandes
avanos no que se refere s unidades de memria principal, com a substituio do sistema de
tubos de raios catdicos pelo de ncleos magnticos (usados at hoje).
A memria teve um aumento em sua capacidade de armazenamento, chegando a 32K
Principais computadores: IBM 1401, IBM 7094, Honeywell 800 e IBM 7090.
Tanto a vlvula quanto o transistor realizavam um processamento de cada vez. Com o
desenvolvimento das tcnicas de integrao, surgiram os Circuitos Integrados, onde numa
pequena cpsula continha, vrias dezenas, centenas ou milhares de transistores, ocupando uma
rea menor que uma unha, dando o nome de microprocessador (processador miniatura). A
linguagem de programao foi simplificada e j se podia programar atravs de mnemnicos
(comandos abreviados). Esta linguagem denomina-se ASSEMBLER. As operaes de clculos
eram realizadas em milionsimos de segundos. Realizando 204.000 adies/segundos. Alm do
surgimento dos ncleos de ferrite, fitas e tambores magnticos passam a ser usados como
memria.
possvel dividir os computadores desta gerao em duas grandes categorias:
supercomputadores e minicomputadores.
IBM 7030, tambm conhecido por Strech, foi o primeiro supercomputador lanado na
segunda gerao, desenvolvido pela IBM. Seu tamanho era bem reduzido comparado com
mquinas como o ENIAC, podendo ocupar somente uma sala comum. Ele era utilizado por
grandes companhias, custando em torno de 13 milhes de dlares na poca. Esta mquina
executava clculos na casa dos microssegundos, o que permitia at um milho de operaes por
segundo. Desta maneira, um novo patamar de velocidade foi atingido. Comparado com os da
primeira gerao, os supercomputadores, como o IBM 7030, eram mais confiveis.
PDP-8 foi um dos mini-computadores mais conhecidos da segunda gerao. Basicamente,
foi uma verso mais bsica do supercomputador, sendo mais atrativo do ponto de vista financeiro
(centenas de milhes de dlares). Eram menores do que os supercomputadores, mas mesmo
assim ainda ocupavam um bom espao no cmodo.
A 3 Gerao surgiu com a utilizao dos Circuitos Integrados SLT (Solid Logic Technology) uma tcnica de micro circuitos. Nesta gerao os computadores podiam realizar vrios
processamentos simultneos. As tcnicas de integrao evoluram de SSI (integrao em
pequena escala) para MSI (integrao em mdia escala), LSI (integrao em grande escala) e
VLSI (integrao em muito grande escala). Esta classificao baseada na quantidade de
componentes que o integrado contm. A programao dos computadores desta gerao foi
facilitada pelo aparecimento de linguagens orientadas para o problema especfico. As linguagens
so de natureza universal e assemelham-se cada vez mais a linguagem do homem. As
operaes de clculos eram realizadas em bilionsimos de segundos. Realizando 1.280.000
adies/segundos.
Com a terceira gerao dos computadores, surgiram tambm os teclados para digitao de
comandos. Monitores tambm permitiam a visualizao de sistemas operacionais muito
primitivos, ainda completamente distantes dos sistemas grficos que conhecemos e utilizamos
atualmente.
A quarta gerao teve incio em 1971, quando a Intel lanou o primeiro microprocessador,
o Intel 4004, muito mais potente que os circuitos SSI e MSI de at ento, e s terminou em 1981
com o lanamento dos circuitos ULSI (Circuitos de Escala Ultra Grande). Tem como marco inicial
com os computadores pessoais, surgimento do microprocessador, a reduo no tamanho dos
10
computadores foi muito grande. Surgem muitas linguagens de alto nvel e nasce teleinformtica,
transmisso de dados entre computadores atravs de rede.
Continuou-se o desenvolvimento do Circuito Integrado e a busca de se colocar cada vez
mais um maior nmero de componentes em um chip.
A Intel comeou suas pesquisas nessa rea em 1969. Os resultados foram vistos quando,
em novembro de 1971, buscando atender ao pedido de uma empresa japonesa que precisava de
um circuito integrado especial, a Intel elaborou o 4004, criado por Federico Faggin, Ted Hoff
e Stanley Mazor, primeiro microprocessador comercial.
Internet
De 1969 a 1972 foi criada a Arpanet, que deu incio a Internet (teleinformtica) que conhecemos
hoje. A rede entrou no ar em dezembro de 1969 no EUA. Eles eram interligados atravs de links
de 50 k, criados usando linhas telefnicas dedicadas, adaptadas para o uso de transmisso de
dados.
Em 1971, ocorre a transmisso do primeiro e-mail, realizada pela Universidade da Califrnia para
um computador na Stanford Research Institute com o texto LOGIN, mas chegou apenas "LO".
A Ethernet surgiu entre 1972 e 1973, dentro do PARC (o laboratrio de desenvolvimento da Xerox
nos Estados Unidos), onde foi feito o primeiro teste de transmisso de dados usando esse
padro.
Em 1974 surgiu o TCP/IP, que acabou se tornando o protocolo definitivo para uso
na ARPANET e mais tarde na Internet.
QUINTA GERAO DOS COMPUTADORES (1980/Atualmente)
11
Desde o incio da era dos microcomputadores, o avano tem sido constante. O computador
que se fabrica hoje, dentro de alguns meses j est obsoleto.
Atualmente o que vem surgindo so inmeras renovaes com o objetivo de evoluir os sistemas.
Embora os paradigmas possam mudar, as pesquisas normalmente evoluem baseadas em
resultados do passado, que se constituem em fundamentos de um desenvolvimento posterior
Para Fixar
Escreva um breve resumo sobre o processo evolutivo dos computadores
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
__________________________________________________________________.
SOFTWARES
O QUE ? Software uma sequncia de instrues escritas para serem interpretadas por
um computador com o objetivo de executar tarefas especficas. Em um computador, o software
classificado como a parte lgica cuja funo fornecer instrues para o hardware.
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
12
Diferentemente do que muitas pessoas imaginam o computador no faz nada sozinho. Ele
apenas processa uma srie de informaes inseridas pelo usurio para ento fornecer os
resultados. As informaes inseridas e os resultados que recebemos precisam estar num formato
que ns humanos conseguimos entender. Para facilitar essa comunicao entre homem e
computador, foram criados os softwares ou programas de computador. Na realidade, tudo que
fazemos com um computador pela execuo desses programas.
Um sistema operacional um programa que atua como intermedirio entre o usurio e o
hardware de um computador. O propsito de um sistema operacional propiciar um ambiente no
qual o usurio possa executar outros programas de forma conveniente, por esconder detalhes
internos de funcionamento e eficincia, por procurar gerenciar de forma justa os recursos do
sistema.
Vimos que o sistema operacional interage diretamente com o hardware e, com isso,
influenciado diretamente pela evoluo do mesmo. Portanto, a evoluo dos sistemas
operacionais est, em grande parte, relacionada ao desenvolvimento de equipamentos cada vez
mais velozes, compactos e de custos baixos e necessidade de aproveitamento e controle
destes recursos.
Assim, ao falar sobre o histrico dos sistemas operacionais, estaremos recordando um
pouco a evoluo do hardware. Devemos lembrar que as datas das fases da evoluo so
aproximadas.
HISTRIA
Desde os tempos do computador programado por chaves e cabos at o surgimento do
teclado e impressora de caracteres, procurou-se ao longo do processo evolutivo do computador
tornar a sua utilizao mais amigvel, precisa, rpida e eficaz.
Primeira gerao (1945-1955)
Vlvulas e Painis de Programao - No incio da Segunda Guerra Mundial, surgiram os primeiros
computadores digitais, formados por milhares de vlvulas, que ocupavam reas enormes, sendo
de funcionamento lento e duvidoso. O ENIAC foi o primeiro computador digital de propsito geral.
Criado para a realizao de clculos balsticos. A programao era feita em painis, atravs de
fios, utilizando linguagem de mquina. No existia o conceito de sistema operacional. Outros
computadores foram construdos nessa poca, mas eram utilizados apenas em universidades e
rgos militares.
SEGUNDA GERAO (1956-1965)
Transistores e Sistemas em Lote (batch)
13
A criao do transistor e das memrias magnticas contribuiu para o enorme avano dos
computadores da poca. O transistor permitiu o aumento da velocidade e da confiabilidade do
processamento; as memrias magnticas permitiram o acesso mais rpido aos dados, maior
capacidade de armazenamento e computadores menores.
Surgiram os primeiros sistemas operacionais, para tentar automatizar as tarefas manuais
at ento realizadas e as primeiras linguagens de programao, como Assembly e Fortran. Os
programas deixaram de ser feitos diretamente no hardware, o que facilitou enormemente o
processo de desenvolvimento de programas. Surgiu o processamento em batch, em que um lote
(batch) de programas e de dados era submetido ao computador por vez.
Terceira gerao (1966-1980)
Circuitos Integrados e Multiprogramao
Por meio dos circuitos integrados e, posteriormente, dos microprocessadores, foi possvel
viabilizar e difundir o uso de sistemas computacionais por empresas, devido diminuio de seus
custos de aquisio. Houve um aumento no poder de processamento e diminuio no tamanho
dos equipamentos.
A evoluo dos processadores de entrada/sada permitiu que, enquanto um programa
esperasse por uma operao de leitura/gravao, o processador executasse um outro programa.
Para tal, a memria foi dividida em parties, em que um programa esperava sua vez para ser
processado. A essa tcnica de compartilhamento da memria principal e processador deu-se o
nome de multiprogramao.
QUARTA GERAO (1981-1990)
Computadores Pessoais
Os mini e superminicomputadores se firmaram no mercado e os microcomputadores
ganharam um grande impulso. Surgem as estaes de trabalho (workstations) que, apesar de
monousurias, permitem que se executem diversas tarefas concorrentemente, criando o conceito
de multitarefa.
No final dos anos 80 os computadores tiveram um grande avano, decorrente de aplicaes que
exigiam um enorme volume de clculos. Para acelerar o processamento, foram adicionados
outros processadores, exigindo dos sistemas operacionais novos mecanismos de controle e
sincronismo. Com o multiprocessamento, foi possvel a execuo de mais de um programa
simultaneamente, ou at de um mesmo programa por mais de um processador. Foram
introduzidos processadores vetoriais e tcnicas de paralelismo de processamento, fazendo com
que os computadores se tornassem ainda mais poderosos.
14
O uso das redes distribudas se difundiu por todo o mundo, permitindo o acesso a outros
sistemas de computao, independentemente de cidade, pas e, at mesmo, fabricante. Os
softwares de rede passaram a estar intimamente relacionados com o sistema operacional de cada
mquina e surgem os sistemas operacionais de rede.
QUINTA GERAO (1991/ATUALMENTE)
Houve grandes avanos em termos de hardware, software e telecomunicaes como
consequncia da evoluo das aplicaes, que necessitavam cada vez mais de capacidade de
processamento e armazenamento de dados. Sistemas especialistas, sistemas multimdia, bancos
de dados distribudos, inteligncia artificial e redes neurais so apenas alguns exemplos da
necessidade cada vez maior de informao e de capacidade de processamento. O conceito de
processamento distribudo explorado nos sistemas operacionais, de forma que suas funes
estejam espalhadas por vrios processadores atravs de redes de computadores.
A dcada de 90 foi definitiva para a consolidao dos sistemas operacionais baseados em
interfaces grficas
Atualmente temos as plataformas multicore (vrios ncleos) disponveis em computadores
pessoais e at notebooks, possibilitando cada vez mais a paralelizao de aplicaes e elevando,
em muito, o tempo de execuo dos programas. Os fanticos pelos jogos de computador que o
digam!
Os sistemas operacionais - so parte fundamental dos computadores, so responsveis por
organizar os processos (programas), que esto sendo executados pelo processador, criando uma
fila de processos que garante que todos recebero sua parcela de processamento.
Para Fixar
Escreva um breve resumo sobre o processo evolutivo dos Softwares
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________
__________________________________________________________________.
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
15
Banco de dados um arquivo especial que armazena dados arrumados sob forma de
tabelas ou matrizes (em linhas e colunas). Quando um conjunto de informaes possui muitas
variveis interligadas entre si, aconselhvel que sejam armazenadas e trabalhadas em um
banco de dados. Os bancos de dados fornecem uma srie de funcionalidades que no so
encontradas em arquivos comuns. Bancos de dados, so colees de informaes que se
relacionam de forma que crie um sentido. So de vital importncia para empresas, e h duas
dcadas se tornaram a principal pea dos sistemas de informao. Fonte: Wikipdia.
Ento um banco de dados uma entidade na qual possvel armazenar dados de maneira
estruturada e com a menor redundncia possvel. Estes dados devem poder ser utilizadas por
programas, por usurios diferentes. Assim, a noo bsica de dados acoplada geralmente a
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
16
uma rede, a fim de poder pr, conjuntamente, estas informaes, da o nome banco. Fala-se,
geralmente, de sistema de informao para designar toda a estrutura que rene os meios
organizados para poder compartilhar dados.
Muitos consideram dados e informaes como palavras sinnimas, mas na verdade no so.
Para entender o que um banco de dados muito importante saber a diferena entre essas duas
palavras.
Dados so fatos brutos, em sua forma primria. E muitas vezes os dados podem no fazer
sentido sozinhos.
Por exemplo, o nmero 2001 isoladamente faz algum sentido? No! Isso um dado. E se eu
dissesse: Ano do atentado terrorista s torres gmeas: 2001? Agora faz sentido! Isso
17
uma informao. Um banco de dados uma estrutura de dados organizada que permite a
extrao de informaes.
Metadados todo dado relativo a outro dado chamado de metadados. No exemplo anterior
do ano 2001 o dado Ano do atentado terrorista s torres gmeas um metadado, pois ele um
dado sobre o dado 2001. Outro exemplo mais comum em banco de dados: o campo telefone da
tabela cliente tem, entre outros, os seguinte metadados: nome (telefone), tipo (texto), tamanho (30
caracteres), obrigatoriedade (no), etc.
Um banco de dados formado por dado e metadados. Sem os metadados no seria
possvel organizar e extrair informaes de um banco de dados.
Para Fixar
Dados - Em informtica designa-se por dados os elementos de partida que servem de base
para o tratamento e sobre os quais o computador efetua as operaes necessrias tarefa em
questo.
Os dados so uma representao dos fatos, conceitos ou instrues de uma maneira
normalizada que se adapte comunicao, interpretao e processamento pelo ser humano ou
atravs de mquinas automticas.
Os dados so representados por smbolos como, por exemplo, as letras do alfabeto: a, b, c
, etc., mas no so em si a informao desejada.
Exemplo:
O I O C O M B - so dados, mas no informao perceptvel ao homem.
A informao no mais do que dados organizados e ordenados de forma til. Isto , informao
o conhecimento produzido como resultado do processamento de dados.
Se processarmos os dados que tnhamos anteriormente ento obtemos a informao:
O I O C O M B - Dados
\/ - Processamento
C O M B O I O Informao
Para fixar
Escreva o significado de:
Dados:___________________________________________________________________
_________________________________________________________________________
Informao:_______________________________________________________________
_________________________________________________________________________
18
Metadados:_______________________________________________________________
_________________________________________________________________________
Banco de
dados:___________________________________________________________________
_________________________________________________________________________
19
fortemente em pesquisas para solucionar estes problemas dos bancos de dados digitais
primitivos. Vrios modelos de bancos de dados surgiram nesta poca, dentre eles os modelos
hierrquicos e rede.
Em junho de 1970, o pesquisador Edgar Frank Ted Codd da IBM, mudou a histria dos
bancos de dados apresentando o modelo relacional no artigo intitulado A Relational Model of
Data for Large Shared Data Banks (Um modelo relacional de dados para grandes bancos de
dados compartilhados), onde o autor apresentou uma forma de usurios sem conhecimento
tcnico armazenarem e extrarem grandes quantidades de informaes de um banco de dados.
Esse artigo foi o grande impulso para a evoluo dos bancos de dados, a partir do artigo de Ted
Codd que os cientistas aprofundaram a ideia de criar o modelo de banco de dados relacional.
BANCO DE DADOS RELACIONAL
Apesar de ter sido o marco dos bancos de dados relacionais, o artigo de Codd no foi
muito explorado no incio. S no final da dcada de 70 que foi desenvolvido um sistema baseado
nas ideias do cientista, o Sistema R. Junto com esse sistema foi criado a linguagem de consulta
estruturada (SQL Structured Query Language) que se tornou a linguagem padro para bancos
de dados relacionais. Embora tenha contribudo para a evoluo dos bancos de dados
relacionais, o System R no foi muito bem sucedido comercialmente, mas os sistemas de banco
de dados seguintes foram baseados nele.
Nos anos 80 surgiram outros bancos de dados, a Oracle apresentou o Oracle 2 e a IBM
o SQL/DS (que se tornou DB2), ambos sistemas comerciais de bancos de dados. Na sequencia
vieram SQL Server, MySQL, DBase III, Paradox, etc.
BANCOS DE DADOS HOJE
Atualmente existem vrios modelos de bancos de dados tais como orientado a objetos,
orientado a documentos, etc. Mas o mais comum ainda o banco de dados relacional. A deciso
entre qual modelo de banco de dados utilizarem baseia-se no tipo de dados que voc pretende
armazenar. Por exemplo, se voc for armazenar uma grande quantidade de dados em um modelo
pequeno (imagine um banco de dados para o twitter), mais indicado utilizar um banco de dados
orientado a documentos a um banco de dados relacional. Muitas questes envolvem essa
deciso, mas no uma questo de superioridade entre uma ou outra tecnologia, todas tm prs
e contras e so mais indicadas ou no para cada problema.
Para fixar
Faa um breve resumo sobre o surgimos dos bancos de dados
______________________________________________________________________________
______________________________________________________________________________
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
20
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
21
Forma de armazenamento.
22
Esta pode ser como que etiquetada de modo a tornar fcil a sua procura e a evitar perdas
de tempo.
Quando a informao est armazenada em ficheiros, estes indicam o seu tipo, atravs de
uma extenso ao nome do ficheiro.
Algumas das extenses mais comuns so:
- COM: ficheiro de comandos - BACK: backup ou cpias de segurana
- EXE: executveis - SYS: ficheiros de sistema
- BAT: processamento batch - XLS: folha de clculo provenientes do Excel
- TXT: texto no formato ASCII - PPT: apresentaes provenientes do PowerPoint
- PAS: programas em Linguagem Pascal - MBD: base de dados provenientes do Access
- C: programas em Linguagem C - DOC: documentos provenientes de um processador de
texto.
Quanto FORMA DE ARMAZENAMENTO da informao
Relativamente ao armazenamento, por exemplo, no disco rgido do computador, a
informao organizada em diretorias, cujo nome revela o tipo de ficheiros que a se encontram,
podendo cada diretorias conter diversas subdiretorias.
Organizao dos dados num Computador
Os dados que fornecemos a um computador para processar podem ser de trs tipos:
quantitativos; classificativos; referenciais.
23
24
25
informao. Um banco de dados normalmente agrupa informaes utilizadas para um mesmo fim.
O modelo de dados mais adotado hoje em dia o modelo relacional, onde as estruturas
tm a forma de tabelas, compostas por linhas e colunas.
Resumindo, um banco de dados uma coleo de dados relacionados. Entende-se por
dado, toda a informao que pode ser armazenada e que apresenta algum significado implcito
dentro do contexto ao qual ele se aplica. Por exemplo, num sistema bancrio, uma pessoa
identificada pelo seu cpf(cliente). Em um sistema escolar a pessoa identificada pelo seu nmero
de matrcula(aluno). Alm disso, os dados que sero armazenados em cada situao podem
diferir consideravelmente.
Atividades
1) Onde utilizar um banco de dados?
26
Modelo Relacional
O modelo relacional uma teoria matemtica desenvolvida por Edgar Frank Codd para
descrever como as bases de dados devem funcionar. Embora esta teoria seja a base para o
software de bases de dados relacionais, muito poucos sistemas de gesto de bases de dados
seguem o modelo de forma restrita, e todos tm funcionalidades que violam a teoria, desta forma
variando a complexidade e o poder. A discusso se esses bancos de dados merecem ser
chamados de relacional ficou esgotada com tempo, com a evoluo dos bancos existentes.
De acordo com a arquitetura ANSI / SPARC em trs nveis, os Bancos de dados
relacionais consistem de trs componentes:
uma coleo de estruturas de dados, formalmente chamadas de relaes, ou
informalmente tabelas, compondo o nvel conceitual;
uma coleo dos operadores, a lgebra e o clculo relacionais, que constituem a base da
linguagem SQL;
uma coleo de restries da integridade, definindo o conjunto consistente de estados de
base de dados e de alteraes de estados. As restries de integridade podem ser de quatro
tipos:
domnio (ou tipo de dados),
atributo,
restries de base de dados.
De acordo com o Princpio de Informao: toda informao tem de ser representada como dados;
qualquer tipo de atributo representa relaes entre conjuntos de dados.
Nos bancos de dados relacionais os relacionamentos entre as tabelas no so codificados
explicitamente na sua definio. Em vez disso, se fazem implicitamente pela presena de
atributos chave. As bases de dados relacionais permitem aos utilizadores (incluindo
27
28
O QUE O HARDWARE?
No mbito da informtica, dada a designao de hardware a todos os componentes
fsicos que fazem parte de um sistema informtico, includo toda a parte fsica de um computador
(nomeadamente os processadores, motherbord, disco rgido placas de som, placas de vdeo,
memrias, etc.) e todos os perifricos (tais como teclados, mouse, monitores, impressoras,
scanners, modems, entre outros).
Peas de um computador
Se voc usa um computador desktop, j deve saber que no existe uma parte nica
chamada "computador". Um computador , na verdade, um sistema de muitas partes funcionando
em
conjunto.
As
partes
fsicas,
que
voc
pode
ver
tocar,
so
denominadas
coletivamente hardware. (O software, por outro lado, se refere s instrues, ou programas, que
dizem ao hardware o que fazer.)
A ilustrao a seguir mostra os dispositivos de hardware mais comuns em um sistema de
computador desktop. Seu sistema pode ter uma aparncia um pouco diferente, mas
provavelmente possui a maioria destas peas. Um computador laptop possui peas semelhantes,
mas as combina em um nico pacote do tamanho de um caderno.
29
Unidade de sistema
A unidade de sistema (Gabinete) o ncleo de um sistema de computador. Normalmente,
uma caixa retangular colocada sobre a mesa ou embaixo dela. Dentro dessa caixa esto os
componentes eletrnicos que processam as informaes. O mais importante desses
componentes a CPU (unidade de processamento central) ou microprocessador, que atua como
o
"crebro"
do
computador.
Outro
componente
a memria
RAM,
que
armazena
Unidade de sistema
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
30
Armazenamento
O computador possui uma ou mais unidades de disco, ou seja, dispositivos que armazenam
informaes em um disco de plstico ou de metal. O disco preserva as informaes mesmo
quando o computador est desligado.
Unidade de disco rgido
A unidade de disco rgido do computador armazena informaes em um disco rgido, que um
prato rgido ou pilha de pratos com uma superfcie magntica. Como os discos rgidos podem
reter uma grande quantidade de informaes, normalmente eles funcionam como principal meio
de armazenamento do computador, guardando praticamente todos os programas e arquivos. Em
geral, a unidade de disco rgido fica localizada dentro da unidade de sistema.
CD
31
As unidades de DVD fazem o mesmo que as unidades de CD e tambm lem DVDs. Se voc
tiver uma unidade de DVD, poder ver filmes no computador. Muitas unidades de DVD podem
gravar dados em DVDs vazios.
Dica
Se voc tiver uma unidade de CD ou DVD gravvel, faa backup (copie) periodicamente de seus
arquivos importantes em CDs ou DVDs. Dessa forma, caso venha a ocorrer alguma falha no disco
rgido, voc no perder os dados.
Unidade de disquete
As unidades de disquete armazenam informaes em discos, tambm chamados discos
flexveis ou disquetes. Comparado a CDs e DVDs, os disquetes podem armazenar apenas uma
pequena quantidade de dados. Eles tambm recuperam informaes de forma mais lenta e so
mais vulnerveis a danos. Por esses motivos, as unidades de disquete so cada vez menos
usadas, embora ainda sejam includas em alguns computadores.
Disquete
Por que estes discos so chamados de "disquetes"? Apesar de a parte externa ser composta de
plstico rgido, isso apenas a capa. O interior do disco feito de um material de vinil fino e
flexvel.
Mouse
Mouse um pequeno dispositivo usado para apontar e selecionar itens na tela do computador.
Embora existam mouses de vrias formas, o modelo mais comum se assemelha a um rato (como
diz o nome em ingls). Ele pequeno e alongado, sendo conectado unidade de sistema por um
cabo comprido que faz lembrar uma cauda. Alguns mouses mais novos so sem fio.
Mouse
32
Ponteiros do mouse
medida que voc move o mouse com a mo, um ponteiro na tela se move na mesma direo.
(A aparncia do ponteiro pode mudar dependendo da sua posio na tela.) Quando quiser
selecionar um item, aponte para ele e clique no boto principal, ou seja, pressione-o e solte-o.
Apontar e clicar com o mouse a principal maneira de interagir com o computador. Para mais
informaes, consulte Usando o mouse.
Teclado
A finalidade principal do teclado digitar texto no computador. Ele possui teclas para letras e
nmeros, exatamente como em uma mquina de escrever. A diferena est nas teclas especiais:
O teclado numrico, localizado direita na maioria dos teclados, permite inserir nmeros
rapidamente.
As teclas de navegao, como as teclas de seta, permitem mover sua posio dentro de
documentos ou pginas da Web.
Teclado
Voc tambm pode usar o teclado para executar muitas das mesmas tarefas que executa com
um mouse. Para mais informaes, consulte Usando o teclado.
Monitor
O monitor exibe informaes em forma visual, usando texto e elementos grficos. A parte do
monitor que exibe as informaes chamada tela. Como a tela de uma televiso, a tela de um
computador pode mostrar imagens paradas ou em movimento.
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
33
Existem dois tipos bsicos de monitores: CRT (tubo de raios catdicos) e LCD (vdeo de cristal
lquido). Ambos produzem imagens ntidas, mas os monitores LCD levam vantagem por serem
mais finos e mais leves.
34
Alto-falantes do computador
Modem
Para conectar o computador Internet, voc precisa de um modem, um dispositivo que envia e
recebe informaes do computador por linha telefnica ou cabo de alta velocidade. s vezes, os
modems vm embutidos na unidade de sistema, mas os de alta velocidade normalmente so
componentes separados.
Modem a cabo
O QUE O SOFTWARE?
35
outro equipamento) e que permite executar determinadas tarefas para as quais o software foi
projetado. Estes programas so compostos por uma sequncia de instrues (os comandos) e de
declaraes de dados, as quais so armazenveis num meio digital.
Software uma sequncia de instrues escritas para serem interpretadas por um
computador com o objetivo de executar tarefas especficas. Tambm pode ser definido como
os programas que comandam o funcionamento de um computador.
Em um computador, o software classificado como a parte lgica cuja funo fornecer
instrues para o hardware. O hardware toda a parte fsica que constitui o computador, por
exemplo, a CPU, a memria e os dispositivos de entrada e sada. O software constitudo por
todos os programas que existem para um referido sistema, quer sejam produzidos pelo prprio
utente ou pelo fabricante do computador.
O termo ingls "software" foi usado pela primeira vez em 1958 em um artigo escrito pelo cientista
americano John Wilder Tukey. Foi tambm ele o responsvel por introduzir o termo "bit" para
designar "dgito binrio".
Os softwares podem ser classificados como:
SOFTWARE DE SISTEMA
Geralmente dividido em SISTEMAS OPERACIONAIS e PROGRAMAS UTILITRIOS. Para
comear os Sist. Operacionais so de grande importncia, pois eles nos do a opo de "dizer ao
computador o que ele deve fazer". Dois exemplos bastante conhecidos do nosso pblico so
o Mac, o Windows e o Linux. Os Programas utilitrios geralmente so softwares de menor porte
com funes mais especificas tipo: Verificao de Disco, Cpias de Segurana entre outros.
SOFTWARE APLICATIVO
Neste tipo de software se enquadram todos aqueles programas que so utilizados na execuo
de tarefas especficas. Posso citar vrios exemplos mas os mais comuns so os processadores
de texto, como o Word, que servem para trabalhar com os mais diversos tipos de textos, emitir
etiquetas, e fazer formulrios, as planilhas eletrnicas como o Excel so poderosas ferramentas
de clculos que facilitam tanto aquele trabalho rduo de matemtica, fazer grficos com real
representao dos dados uma coisa muito boa pra quem precisa e por ltimo o que muitos
usam mas no sabem o nome ao certo que so os Browsers ou Navegadores, softwares usados
para navegar na Web, dentre eles os mais conhecidos atualmente so: Windows Internet
Explorer, Firefox, Google Chrome, Opera e Safri.
36
LINGUAGEM DE PROGRAMAO
Este tem como finalidade desenvolvimento de outros programas e sistemas de uso genrico.
Utilizando este tipo de software um programador pode desenvolver sistemas como: Sistemas
Contbeis, Administrao de Empresas, Controle de Estoque/Venda/Compra etc.
SOFTWARE COMO SERVIO
Saas a sigla de Software as a service, em traduo livre, Software como Servio. Para que
todos possam entender, ele um modelo de distribuio de software, na qual no vendido e
instalado localmente, mas sim liberado apenas o acesso ao servio oferecido por este software
e licenciado para a utilizao atravs da internet.
SOFTWARES TUTORIAIS
Geralmente so usados para informar ou ensinar sobre determinado assunto, muito usados em
treinamentos. Os conceitos transmitidos atravs desse software se restringem ao que foi previsto
por uma equipe de desenvolvimento do mesmo.
SOFTWARE DE EXERCITAO
Similar ao software tutorial, mas aqui o usurio conta com maior interatividade atravs de
resposta diante de questes que sero apresentadas.
SOFTWARE DE INVESTIGAO
Nesta categoria se enquadram todos os softwares que permitem a localizao de diversas
informaes a respeito de diversos assuntos. As enciclopdias so normalmente classificadas
nesta categoria.
SOFTWARE DE SIMULAO
Geralmente utilizados para simulaes de situaes da vida real. Dentre os mais conhecidos
esto os simuladores de voo e os gerenciadores de cidades, muito conhecidos pelo mundo jovem
nos jogos, mas, quando pensamos em simuladores podemos errar a lig-los somente a jogos,
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
37
hoje eles so bastante usados em situaes de treinamentos de pessoas para enfrentar casos no
seu dia-a-dia.
SOFTWARE DE JOGOS
Geralmente so softwares relacionados a entretenimento para proporcionar lazer e diverso.
Dispem de muitos recursos interativos e existem de todos os tipos, desde estratgias at
simulaes reais de muitas coisas como corridas (Need for Speed) at mesmo de vida como o
Second Life.
SOFTWARES ABERTOS
So aqueles que permitem que o usurio produza com liberdade e criatividade, se classificam
nessa categoria aqueles softwares de apresentaes, bancos de dados, e vrios outros.
Para fixar
Descreva uma definio para os tipos de softwares:
Software de Sistema:_____________________________________________________________
Software Aplicativo: ______________________________________________________________
Software de Linguagem: __________________________________________________________
Software abertos: _______________________________________________________________
38
Por ltimo, temos que conceituar um sistema de banco de dados como o conjunto de quatro
componentes bsicos: dados, hardware, software e usurios. Date conceituou que sistema de
bancos de dados pode ser considerado como uma sala de arquivos eletrnica. A Figura 1 ilustra
os componentes de um sistema de banco de dados.
Nvel de viso do usurio: as partes do banco de dados que o usurio tem acesso de
acordo com a necessidade individual de cada usurio ou grupo de usurios;
Nvel conceitual: define quais os dados que esto armazenados e qual o relacionamento
entre eles;
Nvel fsico: o nvel mais baixo de abstrao, em que define efetivamente de que maneira
os dados esto armazenados.
39
Modelagem conceitual;
Projeto lgico.
Estas duas etapas se referem a um sistema de banco de dados ainda no implementado, ou seja,
que ainda no exista, um novo projeto. Para os casos em que o banco de dados j exista, mas
um sistema legado, por exemplo, ou um sistema muito antigo sem documentao, o processo de
projeto de banco de dados se dar atravs da utilizao de uma tcnica chamada de Engenharia
Reversa, que ser visto em outra oportunidade.
Modelo conceitual
a descrio do BD de maneira independente ao SGBD, ou seja, define quais os dados
que aparecero no BD, mas sem se importar com a implementao que se dar ao BD. Desta
forma, h uma abstrao em nvel de SGBD.
Uma das tcnicas mais utilizadas dentre os profissionais da rea a abordagem entidaderelacionamento (ER), onde o modelo representado graficamente atravs do diagrama entidaderelacionamento (DER) (Figura 3).
40
endereco
Turma
cod_turma
sala
periodo
Manh
Noite
41
O modelo lgico do BD relacional deve definir quais as tabelas e o nome das colunas que
compem estas tabelas.
Para o nosso exemplo, poderamos definir nosso modelo lgico conforme o seguinte:
Aluno(mat_aluno, nome, endereco)
Turma (cod_turma, sala, periodo)
importante salientar que os detalhes internos de armazenamento, por exemplo, no so
descritos no modelo lgico, pois estas informaes fazem parte do modelo fsico, que nada mais
que a traduo do modelo lgico para a linguagem do software escolhido para implementar o
sistema.
42
Tudo que fazemos em um banco de dados passa pelo SGBD! O SGBD responsvel por tudo,
salvar os dados no HD, manter em memria os dados mais acessados, ligar dados e metadados,
disponibilizar uma interface para programas e usurios externos acessem o banco de dados (para
banco de dados relacionais, utilizada a linguagem SQL), encriptar dados, controlar o acesso a
informaes, manter cpias dos dados para recuperao de uma possvel falha, garantir
transaes no banco de dados, enfim, sem o SGBD o banco de dados no funciona!
comum as pessoas chamarem um SGBD de banco de dados, por exemplo: banco de
dados Oracle, banco de dados MySQL, banco de dados SQL Server, etc. Na verdade esses so
os SGBDs, banco de dados o que eles oferecem, o correto cham-los de: SGBD Oracle,
SGBD MySQL, SGBD SQL Server, etc. Cada um implementa um banco de dados (ou vrios) de
uma maneira diferente, mas para o usurio isso quase transparente, pois a linguagem de
acesso aos dados a mesma, o SQL. Agora voc j sabe, pra acessar um banco de dados voc
precisa usar um SGBD.
43
linguagem hospedeira (por exemplo, Pascal, C, C++, Java, etc.). Estes programas so
frequentemente referenciados como programas de aplicao. Exemplos em um sistema
bancrio incluem programas que geram cheques de pagamento, fazem dbitos e crditos
em
contas,
transferem
fundos
entre
contas,
etc.
Uma vez que a sintaxe da DML normalmente bastante diferente da sintaxe da linguagem
hospedeira, chamadas na DML so usualmente precedidas por um caractere especial, e
ento o cdigo apropriado pode ser gerado. Um pr-processador especial, chamado prcompilador DML, converte o comando da DML em chamada de procedimento normal na
linguagem hospedeira. O programa resultante ento passado pelo compilador da
linguagem hospedeira, o qual gera o cdigo-objeto apropriado.
Existem tipos especiais de linguagens de programao que combinam estruturas de controle de
linguagens tipo Pascal com estruturas de controle para a manipulao de um objeto de um banco
de dados (por exemplo, as relaes). Essas linguagens, algumas vezes chamadas de linguagens
de quarta gerao, frequentemente incluem recursos especiais para facilitar a criao de
formulrios e a disposio de dados na tela. A grande maioria dos sistemas de bancos de dados
comerciais inclui uma linguagem de quarta gerao.
Usurios de alto nvel. Esses usurios interagem com o sistema sem escrever
programas. Em vez disso, eles formulam suas consultas em uma linguagem de consulta
(query) a banco de dados. Cada consulta submetida a um processador de consulta, cuja
funo gerar um comando da DML e dividi-lo em instrues que o gerenciador do banco
de dados compreenda.
44
Gerenciador do banco de dados, que fornece a interface entre os dados de baixo nvel
armazenados no disco e os programas aplicativos e de consulta submetidos ao sistema.
ndices, que fornecem acesso rpido aos itens de dados guardando determinados valores.
45
46
Perguntas:
1. Descreva as funes principais de um administrador de banco de dados?
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
47
Modelos de Dados
Modelo Relacional
O modelo relacional apareceu devido s seguintes necessidades: aumentar a independncia de
dados nos sistemas gerenciadores de banco de dados; prover um conjunto de funes apoiadas
em lgebra relacional para armazenamento e recuperao de dados; permitir processamento ad
hoc1. O modelo relacional, tendo por base a teoria dos conjuntos e lgebra relacional, foi
resultado de um estudo terico realizado por CODD. O Modelo relacional revelou-se ser o mais
flexvel e adequado ao solucionar os vrios problemas que se colocam no nvel da concepo e
implementao da base de dados. A estrutura fundamental do modelo relacional a relao
(tabela). Uma relao constituda por um ou mais atributos (campos) que traduzem o tipo de
dados a armazenar. Cada instncia do esquema (linha) chamada de tupla (registro). O modelo
relacional no tem caminhos pr-definidos para se fizer acesso aos dados como nos modelos que
o precederam. O modelo relacional implementa estruturas de dados organizadas em relaes.
Porm, para trabalhar com essas tabelas, algumas restries precisaram ser impostas para evitar
aspectos indesejveis, como: Repetio de informao, incapacidade de representar parte da
informao e perda de informao. Essas restries so: integridade referencial, chaves e
integridade de junes de relaes. A Figura 1.3, abaixo, traz exemplos de tabelas sob o
modelo relacional.
48
49
O MySQL surgiu a partir da necessidade da equipe que criou o SGBD, de utilizar algum
mecanismo que permitisse a conexo de tabelas criadas na linguagem SQL para um determinado
fim. A princpio, o grupo iria utilizar o mSQL, mas logo perceberam que esta ferramenta no era
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
50
rpida o suficiente para atender s necessidades do projeto. O jeito foi criar uma soluo prpria.
Nascia o MySQL.
O MySQL foi criado por Michael Widenius na companhia sua TcX. Por volta de 1979
Michael desenvolveu um banco de dados chamado UNIREG, sendo rescritos em vrias
linguagens desde ento". Em 1994, a empresa TcX comeou o desenvolvimento de aplicaes
baseadas na Web, tendo como base o banco UNIREG, porm esse banco possua muito
"overhead" para obter sucesso em uma aplicao para gerao de pginas dinmicas na Web.
Ento a empresa TcX comeou a procurar por outro banco o mSQL, uma ferramenta baseada em
SQL mas com caractersticas pobres no possuindo por exemplo suporte a ndices, e com
desempenho inferior ao UNIREG.
Foi ento que o desenvolvedor do banco UNIREG contatou o David Hughes criador do
mSQL, para saber do interesse dele em unir os dois bancos. Sendo positivo o interesse de David,
a empresa TcX resolveu desenvolver um novo banco, mas mantendo ao mximo a
compatibilidade com mSQL. TcX foi esperta o suficiente para no reinventar o que j estava bem
feito, ela construiu seu servidor baseado na estrutura que j estava montada do UNIREG e
utilizou grande nmero de utilitrios escritas para mSQL e fez API's para o novo servidor
praticamente iguais ao mSQL. Como resultado usurios do mSQL que decidissem mudar para o
novo servidor da TcX, teriam apenas que fazer pequenas e simples mudanas nos cdigos
existentes.
Foi me maio de 1995 que, definitivamente, a primeira verso do MySQL foi lanada. Um
dos parceiros da TcX sugeriu a distribuio do servidor na Internet, o objetivo disso era a
utilizao de um modelo pioneiro desenvolvido por Aladdin Peter Deutsch. O resultado foi um
maior flexibilidade em sem "copyright", que fez do MySQL mais difundido gratuitamente do que
mSQL.
51
MySQL a soluo robusta para quase todo tipo de aplicao, combine a estabilidade do
MySQL com seu baixo custo de propriedade e rapidamente voc ir consider-lo indispensvel. O
MySQL oferece o melhor cenrio de todos SGBD, executa em muitas plataformas, oferece um
baixo TCO (custo total de propriedade) e muito estvel.
O MySQL um sistema de gerenciamento de bancos de dados relacional.
Um banco de dados relacional armazena dados em tabelas separadas em vez de colocar
todos os dados um s local. Isso proporciona velocidade e flexibilidade.
O Servidor MySQL foi desenvolvido originalmente para lidar com bancos de dados muito
grandes de maneira muito mais rpida que as solues existentes e tem sido usado em
ambientes de produo de alta demanda por diversos anos de maneira bem sucedida. Apesar de
estar em constante desenvolvimento, o Servidor MySQL oferece hoje um rico e proveitoso
conjunto de funes. A conectividade, velocidade, e segurana fazem com que o MySQL seja
altamente adaptvel para acessar bancos de dados na Internet.
O Programa de Banco de Dados MySQL um sistema cliente/servidor que consiste de um
servidor SQL multitarefa que suporta acessos diferentes, diversos programas clientes e
bibliotecas, ferramentas administrativas e diversas interfaces de programao (API's). Tambm
concedemos o Servidor MySQL como uma biblioteca multitarefa que voc pode ligar sua
aplicao para chegar a um produto mais rpido, menor e mais facilmente gerencivel.
Algumas Caractersticas do MySQL
Multi-plataforma, portanto suporta diferentes plataformas: Win32, Linux, FreeBSD, Unix, etc.
Cdigo fonte escrito em C e C++ e testado com uma variedade de diferentes compiladores
Suporte s APIs das Seguintes linguagens: PHP, Perl, C,C++,Java, Pynthon, etc...
Suporte ODBC, voc pode facilmente conectar o Access a um banco de dados do MySQL
52
Nenhum problema com o Y2K, visto que o MySQL usa o relgio do Unix que no
apresentar problemas at 2069.
de software este "free" de open source e no gratuito. Para poder utilizar o MySQL sob a
licena GPL e no precisar pagar, o produto desenvolvido precisa ser GPL tambm, seno,
orientamos a compra da licena comercial, com baixo custo, sendo comercializada por servidor,
sem limites de usurios e processadores e ainda com garantia perptua de atualizao de verso
para o resto da vida.
Porque a NASA Utiliza o MySQL
Custo: Porque o custo total de MySQL limitado ao custo da sustentao tcnica, dado que
MySQL est disponvel para o download e o uso livres em a maioria de casos.
Sustentao: devido comunidade grande do colaborador que pode ser encontrada no Internet.
Embora a NASA usasse a sustentao direta dos colaboradores de MySQL infrequentemente,
indicou que "eram muito teis e responsivos quando needed". Alm disso, colaborador John
Sudderth de NAIS indicado em um artigo que discute o interruptor que o custo para a sustentao
oficial era aproximadamente 1 por cento da despesa tcnica da sustentao para o oracle.
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
53
Compatibilidade: MySQL pode facilmente conectar com a maioria de aplicaes SQL-sQLcompliant com ODBC.
Talvez uma quarta vantagem a fazer o interruptor a MySQL podia ser atribuda ao desempenh o.
"ns observamos um aumento [velocidade de] no desempenho desde que a mudana e no
experimentamos
nenhuns
problemas
com
produto",
no
dizemos
os
sistemas
computadorizados analista de NAIS e o lder de projeto Dwight Clark indicado em um artigo para
a semana federal do computador
Atravs
de
sites
da
Internet,
mais
precisamente
no
prprio
site
do
produto
(http://www.mysql.com).
Concluindo - incrvel como um produto como o SGBD MySQL exerce to bem sua funo e
ainda gratuito, superando assim a concorrncia, talvez por esse mesmo motivo de ele ser open
source, e que todo desenvolvedor possa dar seu toque ao sistema o que o torna to eficiente.
Este documento resume um pouco a vida desse notrio produto que s tende a crescer mais e
mais, e que ns estaremos acompanhado e ajudando em sua transio para a excelncia.
COMANDOS e OPERADORES
1) Tipos numricos:
Existem tipos de dados numricos, que se podem dividir em dois grandes grupos, os que esto
em vrgula flutuante (com decimais) e os que no.
Int: nmero inteiro com ou sem sinal. Com sinal a margem de valores vlidos desde
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
54
-2147483648 at 2147483647.
Float: nmero pequeno em vrgula flutuante de preciso simples. Os valores vlidos vo desde 3.402823466E+38 at -1.175494351E-38,0 at desde 175494351E-38 at 3.402823466E+38.
( o tipo para ser usado em nmeros reais, preo, e nmeros que usa decimal, ex: 10,32).
2) Tipos data:
Na hora de armazenar datas, h que ter em conta que MySQL no verifica de uma maneira
estricta se uma data vlida ou no. Simplesmente comprova que o ms est compreendido
entre 0 e 12 e que o dia est compreendido entre 0 e 31.
Date: tipo data armazena uma data. A margem de valores vai desde o 1 de Janeiro de 1001 ao
31 de dezembro de 9999. O formato de armazenamento de ano-mes-dia.
Time: armazena uma hora. A margem de horas vai desde -838 horas, 59 minutos e 59 segundos.
O formato de armazenamento 'HH:MM:SS'.
3 Tipos de cadeia:
VarChar(n): armazena uma cadeia de longitude varivel. A cadeia poder conter desde 0 at 255
caracteres. Dentro dos tipos de cadeia pode-se distinguir dois subtipos, os tipo Test e os tipo Blob
(Binary Large Object) A diferena entre um tipo e outro o tratamento que recebem na hora de
orden-los e compar-los. No tipo test ordena-se sem ter importncia as maisculas e as
minsculas e no tipo blob ordena-se tendo em conta as maisculas e minsculas.
(para usar em palavras)
Comandos Bsicos do SQL
Iremos ver os comandos bsicos do SQL, utilizados pela maioria dos bancos de dados , inclusive
o MySQL, que sero necessrios para o desenvolvimento do nosso projeto, pois o objetivo deste
curso no aprender o SQL, mas sim, o PHP.
Observe que todo comando SQL termina com um ; (ponto e vrgula).
Sintaxe:
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
55
Onde:
nome_table - indica o nome da tabela a ser criada.
nome_atributo - indica o nome do campo a ser criado na tabela.
tipo - indica a definio do tipo de atributo ( integer(n), char(n), ... ).
Exemplo:
Create table alunos (
Id_aluno INT(3) NOT FULL,
nome VARCHAR(40) NOT NULL,
endereco VARCHAR (50) NOT NULL
turma VARCHAR(20) NOT NULL,
PRIMARY KEY (matricula)
);
Comando Drop
Este comando elimina a definio da tabela, seus dados e referncias.
Sintaxe:
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
56
Exemplo:
Drop table alunos;
Comando Alter
Este comando permite inserir/eliminar atributos nas tabelas j existentes.
Sintaxe:
ALTER TABLE < nome_tabela > ADD / DROP (
nome_atributo1 < tipo > [ NOT NULL ],
nome_atributoN < tipo > [ NOT NULL ]
);
Exemplo:
Alter table alunos ADD COLUMN turno char(10) NOT NULL;
Comando SELECT
Permite recuperar informaes existentes nas tabelas.
Sintaxe:
SELECT [DISTINCT] expressao [AS nom-atributo] [FROM from-list] [WHERE condicao] [ORDER
BY
attr_name1 [ASC | DESC ]
Onde:
DISTINCT - Para eliminar linhas duplicadas na sada.
Expresso - Define os dados que queremos na sada, normalmente uma ou mais colunas de
uma tabela da lista FROM.
AS nom-atributo - um alias para o nome da coluna, exemplo:
FROM - lista das tabelas na entrada
57
Comando INSERT
Adiciona um ou vrios registros a uma tabela. Isto referido como consulta anexao.
Sintaxe:
INSERT INTO destino [(campo1[, campo2[, ...]])]
VALUES (valor1[, valor2[, ...])
Onde;
Destino - O nome da tabela ou consulta em que os registros devem ser anexados.
campo1, campo2 - Os nomes dos campos aos quais os dados devem ser anexados valor1,
valor2 - Os valores para inserir em campos especficos do novo registro. Cada valor inserido no
campo que corresponde posio do valor na lista: Valor1 inserido no campo1 do novo registro,
valor2 no campo2 e assim por diante.
Os valores devem ser separados com uma vrgula e os campos de textos entre aspas duplas ou
simples.
Exemplo:
Insert into alunos (Id_aluno, nome, endereo, turma, turno)
Values (1, Glaucio, Av. das Amricas, 1101, manh);
Comando UPDATE
Cria uma consulta atualizao que altera os valores dos campos em uma tabela especificada com
base em critrios especficos.
Sintaxe:
UPDATE tabela SET campo1 = valornovo, ... WHERE critrio;
Onde:
Tabela - O nome da tabela cujos dados voc quer modificar.
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
58
Valornovo - Uma expresso que determina o valor a ser inserido em um campo especfico nos
registros atualizados.
critrio - Uma expresso que determina quais registros devem ser atualizados. S os registros
que satisfazem a expresso so atualizados.
Exemplo:
Update alunos Set turno = tarde where turma = 1101;
UPDATE especialmente til quando voc quer alterar muitos registros ou quando os registros
que voc quer alterar esto em vrias tabelas. Voc pode alterar vrios campos ao mesmo
tempo.
UPDATE no gera um conjunto de resultados. Se voc quiser saber quais resultados sero
alterados, examine primeiro os resultados da consulta seleo que use os mesmos critrios e
ento execute a consulta atualizao.
Comando DELETE
Remove registros de uma ou mais tabelas listadas na clusula FROM que satisfaz a clusula
WHERE.
Sintaxe:
DELETE [tabela.*]
FROM tabela
WHERE critrio
onde:
tabela.* - O nome opcional da tabela da qual os registros so excludos.
tabela - O nome da tabela da qual os registros so excludos.
critrio - Uma expresso que determina qual registro deve ser excludo.
Exemplo:
Delete from alunos WHERE turno='Manh';
59
Entretanto, se voc eliminar a tabela, a estrutura perdida. Por outro lado, quando voc usa
DELETE, apenas os dados so excludos. A estrutura da tabela e todas as propriedades da
tabela, como atributos de campo e ndices, permanecem intactos.
Voc pode usar DELETE para remover registros de tabelas que esto em uma relao um por
vrios com outras tabelas. Operaes de excluso em cascata fazem com que os registros das
tabelas que esto no lado "vrios" da relao sejam excludos quando os registros
correspondentes do lado "um" da relao so excludos na consulta.
Por exemplo, nas relaes entre as tabelas Clientes e Pedidos, a tabela Clientes est do lado
"um" e a tabela Pedidos est no lado "vrios" da relao. Excluir um registro em Clientes faz com
que os registros correspondentes em Pedidos sejam excludos se a opo de excluso em
cascata for especificada.
O DELETE exclui registros inteiros e no apenas dados em campos especficos. Se voc quiser
excluir valores de um campo especfico, crie uma consulta atualizao que mude os valores para
Null.
Aps remover os registros usando uma consulta excluso, voc no poder desfazer a operao.
Se quiser saber quais arquivos foram excludos, primeiro examine os resultados de uma consulta
seleo que use o mesmo critrio e ento, execute a consulta excluso. Mantenha os backups de
seus dados. Se voc excluir os registros errados, poder recuper-los a partir dos seus backups.
Em Resumo
CREATE DATABASE
Cria um banco de dados. Este comando cria uma rea lgica, diretrio, onde estaro
armazenadas todas as tabelas do banco de dados.
Ex: mysql>CREATE DATABASE funcionrios;
DROP DATABASE
Apaga um banco de dados.
Ex: mysql>DROP DATABASE funcionrios;
CREATE TABLE
Comando utilizado para criar tabelas.
Ex: mysql>CREATE TABLE alunos (matricula UNSIGNED INT(10) NOT NULL, nome CHAR(40)
NOT NULL,turma CHAR(20) NOT NULL,
PRIMARY KEY (matricula));
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
60
ALTER TABLE
Altera Tabela
Ex: mysql>ALTER TABLE alunos ADD COLUMN turno char(10) NOT NULL
DROP TABLE
Apaga uma tabela.
Ex: mysql>DROP TABLE alunos;
INSERT
Comando utilizado para inserir valores numa tabela.
Ex: mysql>INSERT INTO alunos(matricula,nome,turma,turno)values
(127423,'Fred Cox Junior','Eng. Eletrnica','Manh');
SELECT
Comando usado para recuperar valores de uma tabela. Este poderoso comando, em conjunto
com funes, possibilita a recuperao de qualquer valor de uma tabela.
Ex: mysql>SELECT * FROM alunos where nome='Fred Cox Junior';
mysql>SELECT matricula,turno FROM alunos ORDER BY matricula asc;
DELETE
Apaga registros em uma tabela. Se no for especificada a condio where, todos os dados sero
apagados.
Ex: Mysql>DELETE FROM alunos WHERE turno='Manh';
UPDATE
Altera dados numa tabela.
Ex: mysql>DROP TABLE alunos;
Operadores:
Aritmticos:
`+'=Adio
Ex: mysql> select 3+5;
61
`-'=Subtrao
Ex: mysql> select 3-5;
`*'=Multiplicao
Ex:mysql> select 3*5;
`/'=Diviso
Ex: mysql> select 3/5;
Lgicos:
`NOT'=`!'
Operador lgico de negao NOT. Retorna `1' se o argumento falso, caso verdadeiro retorna
`0'.
`OR'=`||'
Operador lgico de escolha OR.
`AND'=`&&'
Operador lgico AND.
COMPARAO:
`='=Igualdade
`<>'ou`!'=Diferena
`<='=Menor ou igual
`<'=Menor que
`>='=Maior ou igual
`>'=Maior que
62
Praticando
Aps a instalao completa do MySQL, alguns programas, que fazem parte do pacote, ajudam a
conectar ao servidor e a realizar todas as tarefas administrativas.
Como conectar ao MySQL
Conecte-se ao servidor MySQL com o seguinte comando:
mysql -h NOME-DO-SERVIDOR -u NOME-DO-USUARIO
Aps
dar
comando,
sistema
vai
pedir
sua
senha
de
usurio.
Dica: Se voc instalou o MySQL no seu prprio PC, pode usar localhost no lugar de NOME-DOSERVIDOR .
No exemplo, a seguir, veja como se conectar como root:
mysql -u root -p
Se no foi voc quem fez a instalao, pode precisar contatar o administrador do banco de dados
para
saber
que
valores
usar
para
conectar
ao
servidor
MySQL.
Em servidores remotos, voc provavelmente precisar usar o SSH para se conectar ao MySQL.
Como criar um banco de dados no MySQL
O comando para criar um banco de dados este:
CREATE DATABASE nome-do-banco;
Para ver todos os bancos de dados existentes no servidor:
SHOW DATABASES;
Em um exemplo prtico, a criao do banco de dados testes , ficaria assim:
CREATE DATABASE testes;
Voc pode exibir os bancos de dados criados, atravs do comando SHOW:
63
SHOW DATABASES;
Antes de criar uma tabela ou realizar qualquer operao, necessrio selecionar o banco de
dados que vai ser usado:
USE testes;
Como criar uma tabela no MySQL
Como j foi dito, antes de criar uma tabela, voc precisa indicar o banco de dados a ser usado
dentro do qual vai criar uma tabela. Que tal usarmos o exemplo do tpico anterior?
USE testes;
Agora, vamos criar uma tabela dentro dele, com o nome clientes :
1 CREATE TABLE `clientes` (
2 `idCliente` mediumint(8) unsigned NOT NULL auto_increment,
3 `nomeEmpresa` varchar(255),
4 `nomeDiretor` varchar(255) default NULL,
5 `numEmpregados` mediumint default NULL,
6 PRIMARY KEY (`idCliente`)
7 ) AUTO_INCREMENT=1;
Voc pode pedir pro sistema exibir todas as tabelas presentes no banco de dados selecionado:
SHOW tables;
Para obter informaes sobre uma tabela, voc pode usar o comando DESCRIBE ou DESC:
DESCRIBE clientes;
Como inserir mais dados em uma tabela
Vamos povoar mais a nossa tabela com alguns dados:
1
64
Lembra que o campo idCliente foi criado com o parmetro auto_increment . Seu preenchimento
automtico. Voc no precisa informar o seu valor, portanto:
1 INSERT INTO `clientes`
2 (`idCliente`,`nomeEmpresa`,`nomeDiretor`,`numEmpregados`)
3 VALUES ('',"GameCorp.","Din Viesel",2071);
Como ver os registros na tabela com o comando SELECT
Tal como o nome sugere, o comando SELECT seleciona e exibe os registros gravados na tabela.
A maneira mais simples de us-lo essa:
SELECT * FROM clientes;
Voc
pode
refinar
pesquisa
de
inmeras
maneiras.
Se quiser ver apenas o contedo dos campos id_cliente e nome_empresa , use-o assim:
SELECT id_cliente, nome_empresa FROM clientes;
Como remover um registro de uma tabela
A sintaxe do comando para apagar um registro :
DELETE FROM nome-da-tabela WHERE nome-da-coluna=texto;
Veja um exemplo prtico de uso do comando DELETE:
DELETE FROM clientes WHERE nomeEmpresa = 'GameCorp';
Com este comando, TODOS os registros que tiverem nomeEmpresa = 'GameCorp' sero
eliminados. Neste caso, h apenas 1. Mas vamos imaginar que houvesse 10 ou 100 registros em
que o nomeEmpresa fosse igual a GameCorp . Neste caso, seria necessrio usar outro campo
como referncia para encontrar o registro que eu desejo eliminar. No nosso caso, h o
campo idCliente , que nico ele no se repete dentro da tabela:
DELETE FROM clientes WHERE idCliente = 7;
Como remover uma tabela ou um banco de dados
Seja cuidadoso(a). O comando DROP apaga permanentemente uma tabela ou um banco de
dados. Veja como usar o DROP para eliminar uma tabela:
CURSO TCNICO EM INFORMTICA PARA INTERNET TURMA 2015
65