Este documento descreve um curso de 8 horas sobre bancos de dados Access, Base e SQL ministrado em julho de 2016 por Luiz Henrique Rauber Rodrigues. O curso abordará conceitos, princípios e práticas relacionados a esses sistemas de gerenciamento de banco de dados, incluindo modelagem, linguagens SQL e gestão de dados.
Banco de Dados II: Aspectos de Segurança em Banco de Dados (aula 13)Gustavo Zimmermann
- Aspectos de segurança em banco de dados
- Controle de redundância
- Controle de concorrência
- Restrições de integridade (domínio, vazio, chave, referencial), conceito de NULL
- Violação e consistência dos dados
- Mecanismos de controle físico
- Mecanismos de controle lógico
- Criptografia
- Assinatura digital
- SQL Injection (o que é, como funciona, estratégias de prevenção)
- Mecanismos de controle de acesso (Políticas de acesso e Privilégios)
- DCL - Data Control Language (Criação de usuários, Aplicação/restrição de privilégios e Excluindo usuários)
- Segurança contra falhas (Recovery, Backup e Logs)
- Tipos de falhas (Falhas de disco, Falha de sistema e Falha de transação)
- Segurança em Banco livre (MySQL)
- Segurança em banco de dados proprietários (Oracle)
Curso Completo de Banco de Dados com MySQL GRÁTIS em
https://www.youtube.com/playlist?list=PLHz_AreHm4dkBs-795Dsgvau_ekxg8g1r
Curso em Vídeo
Site: http://www.cursoemvideo.com
YouTube: http://www.youtube.com/cursosemvideo
Facebook: http://www.facebook.com/cursosemvideo
Twitter: http://twitter.com/cursosemvideo
Google+: http://plus.google.com/112666558837414979080
Patrocínio
HOSTNET: http://www.hostnet.com.br
Curso Introdução a Banco de Dados DO GOVERNO DO ESTADO DE MINAS GERAIS. PROJETO ESCOLAS - REFERÊNCIA. Material utilizado na capacitação de alunos, professores e funcionários da Secretária da Educação do Estado de Minas Gerais.
Cadernos de Informatica do PORTAL DO PROFESSOR:
- CURSO DE CAPACITAÇÃO EM INFORMÁTICA INSTRUMENTAL
- CURSO DE MONTAGEM E MANUTENÇÃO DE COMPUTADORES
- CURSO SOBRE O SISTEMA OPERACIONAL LINUX
- CURSO DE PROGRAMAÇÃO EM JAVA
- CURSO DE INTRODUÇÃO A BANCOS DE DADOS <--------
- CURSO DE CONSTRUÇÃO DE WEB SITES
- CURSO DE EDITORAÇÃO ELETRÔNICA
- CURSO DE ILUSTRAÇÃO DIGITAL
- CURSO DE PRODUÇÃO FONOGRÁFICA
- CURSO DE COMPUTAÇÃO GRÁFICA 3D
- CURSO DE PROJETO AUXILIADO POR COMPUTADOR
- CURSO DE MULTIMÍDIA NA EDUCAÇÃO
Autor: Professor: Ivon Rodrigues Canedo, da Universidade Católica de Goiás (UCG)´.
Disponível aqui: http://sistemasfafram10.xpg.uol.com.br/Terc.Semestre/BDI/Banco_Dados.pdf
Existe uma vasta gama de banco de dados gerenciados além daqueles que rodam no Amazon EC2 por conta própria. Bancos de dados gerenciados diminuem os esforços de implementar, administrar e manter o seu banco de dados e permite que possa focar na suas aplicações. Entenda as opções e suas diferenças, além das melhores práticas para escolha de uma ou mais delas.
Desenvolvendo para o Windows Azure e SQL AzureLuciano Condé
Conhecendo os principais recursos e como desenvolver para estes dois serviços da plataforma Windows Azure.
Esta palestra foi apresentada para o Encontro de Parceiros na Microsoft Brasil.
Banco de Dados II: Aspectos de Segurança em Banco de Dados (aula 13)Gustavo Zimmermann
- Aspectos de segurança em banco de dados
- Controle de redundância
- Controle de concorrência
- Restrições de integridade (domínio, vazio, chave, referencial), conceito de NULL
- Violação e consistência dos dados
- Mecanismos de controle físico
- Mecanismos de controle lógico
- Criptografia
- Assinatura digital
- SQL Injection (o que é, como funciona, estratégias de prevenção)
- Mecanismos de controle de acesso (Políticas de acesso e Privilégios)
- DCL - Data Control Language (Criação de usuários, Aplicação/restrição de privilégios e Excluindo usuários)
- Segurança contra falhas (Recovery, Backup e Logs)
- Tipos de falhas (Falhas de disco, Falha de sistema e Falha de transação)
- Segurança em Banco livre (MySQL)
- Segurança em banco de dados proprietários (Oracle)
Curso Completo de Banco de Dados com MySQL GRÁTIS em
https://www.youtube.com/playlist?list=PLHz_AreHm4dkBs-795Dsgvau_ekxg8g1r
Curso em Vídeo
Site: http://www.cursoemvideo.com
YouTube: http://www.youtube.com/cursosemvideo
Facebook: http://www.facebook.com/cursosemvideo
Twitter: http://twitter.com/cursosemvideo
Google+: http://plus.google.com/112666558837414979080
Patrocínio
HOSTNET: http://www.hostnet.com.br
Curso Introdução a Banco de Dados DO GOVERNO DO ESTADO DE MINAS GERAIS. PROJETO ESCOLAS - REFERÊNCIA. Material utilizado na capacitação de alunos, professores e funcionários da Secretária da Educação do Estado de Minas Gerais.
Cadernos de Informatica do PORTAL DO PROFESSOR:
- CURSO DE CAPACITAÇÃO EM INFORMÁTICA INSTRUMENTAL
- CURSO DE MONTAGEM E MANUTENÇÃO DE COMPUTADORES
- CURSO SOBRE O SISTEMA OPERACIONAL LINUX
- CURSO DE PROGRAMAÇÃO EM JAVA
- CURSO DE INTRODUÇÃO A BANCOS DE DADOS <--------
- CURSO DE CONSTRUÇÃO DE WEB SITES
- CURSO DE EDITORAÇÃO ELETRÔNICA
- CURSO DE ILUSTRAÇÃO DIGITAL
- CURSO DE PRODUÇÃO FONOGRÁFICA
- CURSO DE COMPUTAÇÃO GRÁFICA 3D
- CURSO DE PROJETO AUXILIADO POR COMPUTADOR
- CURSO DE MULTIMÍDIA NA EDUCAÇÃO
Autor: Professor: Ivon Rodrigues Canedo, da Universidade Católica de Goiás (UCG)´.
Disponível aqui: http://sistemasfafram10.xpg.uol.com.br/Terc.Semestre/BDI/Banco_Dados.pdf
Existe uma vasta gama de banco de dados gerenciados além daqueles que rodam no Amazon EC2 por conta própria. Bancos de dados gerenciados diminuem os esforços de implementar, administrar e manter o seu banco de dados e permite que possa focar na suas aplicações. Entenda as opções e suas diferenças, além das melhores práticas para escolha de uma ou mais delas.
Desenvolvendo para o Windows Azure e SQL AzureLuciano Condé
Conhecendo os principais recursos e como desenvolver para estes dois serviços da plataforma Windows Azure.
Esta palestra foi apresentada para o Encontro de Parceiros na Microsoft Brasil.
Overview do SQL Azure no evento Access Day Lite 2010. Uma das primeiras apresentações do Azure no Brasil. Muita coisa evoluiu desde então, pretendo em breve fazer uma atualização do material
Uma básica introdução a respeito do que é o Bootstrap, fazendo referências sobre o que é a grid, conceito e metodologia de trabalho oriundos do mundo do design gráfico. Bem como uma rápida explicação do LESS, o que é e como funciona.
FLTK Summer Course - Part VII - Seventh ImpactMichel Alves
FLTK (pronounced "fulltick") is a cross-platform C++ GUI toolkit for UNIX®/Linux® (X11), Microsoft® Windows®, and MacOS® X. FLTK provides modern GUI functionality without the bloat and supports 3D graphics via OpenGL® and its built-in GLUT emulation. FLTK is designed to be small and modular enough to be statically linked, but works fine as a shared library. FLTK also includes an excellent UI builder called FLUID that can be used to create applications in minutes. FLTK is provided under the terms of the GNU Library Public License, Version 2 with exceptions that allow for static linking. More informations in http://www.fltk.org.
Material de apoio do segundo dia do curso de verão no Senac. Uma introdução aos conceitos do Rails e apresentação da proposta do projeto a ser desenvolvido.
A idéia é cumprir os objetivos propostos nas próximas três aulas.
O AWS WAF (Web Application Firewall), provê uma camada adicional de segurança para sua aplicação web. Essa sessão terá o intuito de expor, formas de utilização do serviço, arquiteturas, como também, automações de bloqueios.
Palestra feita no Fórum Tchelinux Porto Alegre 2016 (19/11/2016) sob descrição "Era uma vez uma piá nerd tímido desconhecido e sem graduação que conheceu o grupo Tchelinux.org e sua vida mudou, e fim. Mas o que tem no meio da história? Vou contar algumas coisas que vão certamente ajudar padawans numa palestra mais pra stand-up comedy do que motivacional ;)"
Palestra feita no Fórum Tchelinux Porto Alegre 2016 (19/11/2016) sob descrição "Chega um momento que dá vontade de mandar um foda-se né? Mas uns como eu, não conseguem, pois querem que pessoinhas com midi-chlorians evoluam. Assim esta palestra é o resumo de andanças deste ano que culminam na sugestão de projetos para o empoderamento do Hacker/ Maker/ Educador e Nerds afins!"
Palestra a pedido feita no IFSUL (Insituto Federal Sul Rio Grandense) Câmpus de Venâncio Aires.
De Hackerspaces a Comunidades, e como participo disto?
por Luiz Henrique Rauber Rodrigues (aka rauber)
luiz.rauber {gmail, facebook, linkedin)
IFSUL, Venâncio Aires/RS - 27/10/2015
Palestra feita na Univates, Lajeado, em 22/10/2015
Resumo: Em uma palestra/ bate-papo irei ir da cultura hacker, passando pela ética, software e hardware livre, ao ambiente em que elas culminam, os hacker e makes spaces. Citando a teoria e a prática por trás deste ecossistema, e sobre algumas exemplificações de fundações, manutenções e projetos de hackerspaces existentes, espero deixar a semente para a criação do hackerspace de vocês! Como cortesia e complementação, irei expor ideias de soluções que podem lhes contribuir academicamente e profissionalmente. Busquem se infomar antes e tragam dúvidas ;)
Palestra sobre o Code Club implementado em Santiago/RS, aplicado com crianças de 10 anos da 5º série, para validar se o ensino de programação realmente melhora o rendimento escolar.
Na palestra é demonstrado os resultados deste Trabalho de Conclusão de Curso de Juliana Rigon sob orientação de Luiz Rauber, e informações sobre o Code Clube Brasil.
Trabalho acadêmico da egressa (e minha orientanda) Juliana Rigon, onde criou um clube de programação da metodologia do Code Club Brasil e tivemos ótimos resultados :D
Monografia apresentada como requisito para conclusão
do curso de Ciência da Computação pela Universidade Regional Integrada do Alto Uruguai e das Missões.
Orientador Prof. Esp. Luiz Henrique Rauber Rodrigues
Co-orientadora Profa. Esp. Marlene Padilha Specht
Esta palestra foi feita na XIV Jornada de Estudos em Informática na URI Frederico Westphalen no dia 05/10/15.
Resumo: O maior exemplo de negócio rentável em relação a software é o modelo utilizado pela Microsoft, ao qual, faz e vende Windows e o pacote Office (Word...) por exemplo, ou a SAP e TOTVS que detém mais da metade do mercado de ERP brasileiro com soluções proprietárias... Com estas informações pensa-se que software livre não é um negócio lucrativo, mas a Red Hat (software livre) fechou 2015 com US$ 180 milhões de lucro, e ai? Nesta palestra vou expor alguns aprendizados sobre o assunto, potencializado pelas minhas palestras no fisl e meu networking.
Palestra apresentada no Fórum Goiano de Software Livre, em 21/11/2014.
Resumo proposto
"Uma explosão de conhecimentos, assuntos e informações é algo previsível com um título grande assim, mas sobre uma ótica de “menos é mais” nesta palestra/ bate-papo serão demostrados alguns conceitos e resultados de trabalhos recentes desta jornada Academia-Mercado de Trabalho e como Eventos de TI e ambientes como Hackerspaces podem dar uma impulsionada, seja o teu objetivo acadêmico ou profissional. Claro que também terá uma contextualização dos termos bases."
Palestra de 2 horas realizada na Semana Acadêmica do Curso de Tecnologia em Redes de Computadores da UFSM – Santa Maria – 02/10/2013
Objetivo: contextualizar software livre, comunidades e grupos, após relacionando as interações entre softwares livres para o mercado de trabalho assim como é o mercado de trabalho para software livre, o mesmo valendo para a academia, escolas e jogos.
O câncer é uma mutação genética, o Cytoscape um software livre para mapeamento de vias de expressão protéicas e eu um mestrando em Nanociências e docente em Ciência da Computação que nesta palestra falarei sobre tais tópicos, pertencentes ao amplo conhecimento da Bioinformática, tendo o assunto este por tema da dissertação em desenvolvimento “Expressão De Proteínas Na Evolução Do Câncer: Estudo Das Redes De Proteínas Utilizando O Software Cytoscape”. A Bioinformática é uma área de conhecimento nova, que une conhecimentos da área da Biológia, Informática e Matemática, na busca de soluções para mazelas biológicas, como doenças, e ainda pouco explorada no Brasil, tendo como um dos últimos recursos tecnológicos agregados, o software registrado sobre licença GPL, Cytoscape. Desenvolvido como software livre, inicialmente desenvolvido e mantido pelo U.S. National Institute of General Medical Sciences (NIGMS) sendo o suporte para usuários, educação e iniciativas suportadas pelo National Resource for Network Biology (NRNB), mas de direitos da Cytoscape Consortium, sendo apoiado também pela comunidade. Feito sobre a linguagem Java, assim sendo multiplataforma, com API livre e a oferta e uma App Store, apoiada pela Cytoscape Consortium. O Software até pesquisas atuais, é explorado mais acadêmicamente apenas, com o uso principal aplicado a oriundos da genética. Genética é o estudo da natureza do material hereditário, como ele é acondicionado no genoma e como é transmitido de uma célula para a outra durante a divisão celular e de geração para geração durante a reprodução, popularmente dita como genética sendo a ciência dos genes.
A palestra será uma contextualização destas áreas, abordando mais o software, a potencialidade acadêmica e profissional, de como explorar à contribuir.
O LibreOffice é uma das principais suites de escritório no mundo, utilizado desde a leigos à grande programadores que trabalham no seu desenvolvimento, mas e como explorar ainda mais, na escola e na universidade, e não sendo ao uso da suite? É inegável e de conhecimento de muitos o potencial e uso do LibreOffice como suite para escritório, onde pessoas leigas e sem interesse em aprender a fundo algo sobre tecnologia o usam muito bem, como exemplo editando textos e afins e muitas vezes sem nem notar que estão a usar algo construído colaborativamente, como um software livre. Os softwares que compõem o pacote melhoraram e melhoram muito a cada dia graças ao trabalho de muitos que entendem a fundo tecnologia, como os programadores, muitos que aprenderam de forma autodidata ou formados em instituições de ensino técnicas ou superiores. Dentro do potencial do LibreOffice, em um bate-papo no último fisl (Fórum Internacional de Software Livre) com o intuito para fossem revistas e voltasse com palestras antigas sobre a suite de escritório, sendo eu (Luiz Rauber) um usuário e entusiasta antigo, do tempo do Open/BrOffice, surgiu a ideia, potencialmente inédita, que apresento nesta palestra, sobre a resposta a pergunta “como explorar ainda mais, na escola e na universidade, e não sendo ao uso da suite?”. Como docente tenho dificuldade à estimular os alunos no aprendizado de algoritmos, linguagens de programação, práticas e processos de desenvolvimento, e neste papo surgiu um “eureka” de criar um time de bugfix para o LibreOffice na instituição de ensino superior onde leciono, alinhando à projetos que estão sendo planejados de incentivo a programação à escolares. Sendo hoje o desenvolvimento do LibreOffice centrado principalmente na linguagem C e Python, se reutilizará conhecimetos já adquiridos (aqui os alunos já vêem C) e poderei inserir uma nova linguagem (Python), mas o potencial maior não é o aprendizado delas, mas sim os alunos se sentirem e fazerem parte de algo maior, mundial, que é um grande projeto de software livre chamado LibreOffice.org. Nesta palestra demostrarei o planejamento e resultados até o momento colhidos, textualmente liberados em Creative Commons.
1. Bancos de Dados: Access, Base e SQL
8 horas com explanação, diálogo e prática
Julho 2016
por Luiz Henrique Rauber Rodrigues
luizrauber@gmail.com – fb.com/luizrauber
Exceto onde tiver outra referência, este é material é Creative Commons com Atribuição-CompartilhaIgual (CC
BY-SA). Pode copiar, alterar e redistribuir à vontade, mesmo para fins comerciais, mas desde que me cite e
licenciem as novas criações sob termos idênticos. Like Free Software :)
3. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 3/121
Banco de dados?
Local de armazenamento de dados para serem usados
como informações.
4. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 4/121
Banco de dados?
Local de armazenamento de dados para serem usados
como informações de forma organizada.
5. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 5/121
Banco de dados?
Local de armazenamento de dados para serem usados
como informações de forma organizada, com
possibilidade de inserção, remoção e alterações de
dados novos ou existentes.
8. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 8/121
Por que usar um BD?
Porque quer, precisa ou por que sim!
É a melhor forma de guardar e organizar dados.
10. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 10/121
BI - Bussines Inteligence?
Usar os dados (e date warehouses) para gerar
novas informações, estratégias, oportunidades de
negócio.
Mineração. Cruzamentos. Refinamentos. Reusos.
12. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 12/121
Big Data?
BI além das fronteiras da empresa com uso da
internet, e dela bancos de dados públicos à
indexação e informações de sites.
Cloud Computing. Crowd Source.
13. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 13/121
SGBD?
Interface digital para o Local de armazenamento de
dados para serem usados como informações de forma
organizada, com possibilidade de inserção, remoção e
alterações de dados novos ou existentes.
14. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 14/121
SGBD?
Esta interface do Sistema Gerenciador de Banco de
Dados facilita: definição (ex. tabelas), recuperação (ex.
backup), alteração (ex. acessos).
15. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 15/121
SGBD?
Esta interface do Sistema Gerenciador de Banco de
Dados faz: proteção (ex. falhas), segurança (ex.
Acessos), compartilhamento (ex. Distribuídos).
16. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 16/121
SGBD?
Esta interface então liga camadas físicas e lógicas e
possibilita a gestão dos dados.
17. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 17/121
SGBDR?
Sistema Gerenciador de Banco de Dados
Relacional.
Cliente-Servidor.
18. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 18/121
Modelo Relacional
Busca via SQL por relações Schema (Tabelas/
Campos com Linhas e Colunas) por Chave
Primária e/ou Secundária.
19. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 19/121
Modelo Relacional
Tabelas são entidades/ conjuntos, que dão
características aos dados que serão salvos.
Linhas e colunas são campos/ registros, tipos dos
dados que serão salvos em cada espaço.
Buscas/ Consultas/ Alterações e afins via query's,
em SQL (Structured Query Language).
20. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 20/121
Modelo Relacional
Indepêndencia do software da gestão dos dados
e do processamento dos dados. Suporte da teoria
dos conjuntos e da álgebra/expressões
relacionais.
Ex. Access, MySQL
21. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 21/121
Microsoft Access
Faz parte do pacote PRO do Microsoft Office.
25. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 25/121
#dicas
Novo – Banco – Salvar (se reutilizar, Salvar Como)
menu “acesso rápido”
Informações > Criptografia
Campo Requerido Sim/Não (e flag)
Criar “Design de Tabela” que tem mais controle
Utilizar Máscara de entrada
Colocar validação de campos (ferramentas de tabelas)
Ver as “relações” no modo design
Usar “Assistente de Pesquisa” nos menus, como
também Assistente e Design de Formulários e qualquer
outro Assistente :)
28. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 28/121
Principais recursos de ambos
Usar modelos prontos e alterá-los
Criar modelos e reutilizar
Tabelas com campos prontos ou personalizados
Numeração única e automática ID
Uso de funções
34. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 34/121
Desenvolvimento de Software não é
desenvolvimento do Banco de Dados.
Ajustar um software em produção é mais fácil que
ajustar um banco de dados em produção.
Aqui cascata até funciona!
35. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 35/121
Modelos
Hierárquico
em Rede
Relacional
Orientado à Objetos
Objeto Relacional
NoSQL
36. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 36/121
Modelo Hierárquico
Estrutura como a Linguagem Estruturada. Acesso
somente de “pai” pra “filho” em “árvores”.
Ex. Management System da IBM
37. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 37/121
Modelo em Rede
Como o hierárquico, mas horizontalizado. Acesso
de proprietário à membro. Banco e software
dependentes do mesmo design.
Ex. CA-IDMS da CA (Computer Associates)
38. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 38/121
Modelo Relacional - SGBDR
Busca via SQL por relações Schema (Tabelas/
Campos com Linhas e Colunas) por Chave
Primária e/ou Secundária.
39. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 39/121
Modelo Relacional
Tabelas são entidades/ conjuntos, que dão
características aos dados que serão salvos.
Linhas e colunas são campos/ registros, tipos dos
dados que serão salvos em cada espaço.
Buscas/ Consultas/ Alterações e afins via query's,
em SQL (Structured Query Language).
40. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 40/121
Modelo Relacional
Indepêndencia do software da gestão dos dados
e do processamento dos dados. Suporte da teoria
dos conjuntos e da álgebra/expressões
relacionais.
Ex. Access, MySQL
41. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 41/121
Modelo Orientado a Objetos - SGBDOO
Usam a ideia das Linguagem Orientadas a
Objetos, aumentando a possibilidade de relações
por criar tipos de dados (classes). Tabelas são
Objetos, Natives Query, Manipulação de dados
por métodos e construtores. Sem chaves 1º ou 2º
Ex. Oracle 10g, Caché
42. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 42/121
Modelo Objeto-Relacional - SGBDOR
BD Relacional com uso de objetos para incluir
vídeos et al. A abstração dos dados sobre o
modelo relacional melhora a manipulação de
dados. Tabelas com classes.
Ex. PostGreSQL, DB2
43. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 43/121
Modelo NoSQL (Not only SQL)
Foco big-data. Não relacional. Horizontalizado.
Inserção incremental e persistência em cloud.
Não atende ACID. “Banco de dados orientado a
documentos”
Ex. Apache Cassandra, MongoDB
45. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 45/121
Critérios transação ACID
Atomicidade
Commit ou rollback!
Ex. Transferência OK
46. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 46/121
Critérios transação ACID
Consistência
Regras/ Restrições/ Relacionamentos devem ser
respeitados.
Ex. Não haver conta fictícia.
47. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 47/121
Critérios transação ACID
Isolamento
Não deve ocorrer interferências, acessos devem
ser limpos, commit ou rollback.
Ex. Alteração única por CPF.
48. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 48/121
Critérios transação ACID
Durabilidade
Falhas de hardware/ comunicação não devem
interferir nos dados.
Ex. Sem acesso a um CPF.
49. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 49/121
Critétios de Segurança
Integridade
Ex. Dados do CPF estão válidos
50. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 50/121
Critétios de Segurança
Disponibilidade
Ex. Todos os dados do CPF são acessíveis
51. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 51/121
Critétios de Segurança
Confidencialidade
Ex. Só quem tem autorização acessa os dados
52. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 52/121
Linguagens num BD pelo padrão SQL ANSI
(Structured Query Language American National
Standards Institute)
DDL – Data Definition Language
DML – Data Manipulation Language
DCL – Data Control Language
DTL – Data Transactions Language
53. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 53/121
CRUD
Creat INSERT
Read (Retrieve) SELECT
Update UPDATE
Delete (Destroy) DELETE
54. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 54/121
Pensar no BD
Regras do mundo real → Regras do BD
(Algortimo → Software)
55. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 55/121
Pensar no BD
Criar uma semântica com um sentido lógico
Ex. Vendedor atende pessoa física e jurídica.
Ex. Clientes são identificados por CPF ou CNPJ.
Ex. Clientes podem compram produtos no
atacado ou varejo.
70. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 70/121
Linguagens num BD pelo padrão SQL ANSI
(Structured Query Language American National
Standards Institute)
DDL – Data Definition Language
DML – Data Manipulation Language
DCL – Data Control Language
DTL – Data Transactions Language
71. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 71/121
Linguagens num BD pelo padrão SQL ANSI
(Structured Query Language American National
Standards Institute)
DDL – Data Definition Language
CREATE, ALTER, DROP
DML – Data Manipulation Language
DCL – Data Control Language
DTL – Data Transactions Language
72. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 72/121
Linguagens num BD pelo padrão SQL ANSI
(Structured Query Language American National
Standards Institute)
DDL – Data Definition Language
DML – Data Manipulation Language
SELECT, UPDATE, DELETE
DCL – Data Control Language
DTL – Data Transactions Language
73. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 73/121
Linguagens num BD pelo padrão SQL ANSI
(Structured Query Language American National
Standards Institute)
DDL – Data Definition Language
DML – Data Manipulation Language
DCL – Data Control Language
GRANT, REVOKE
DTL – Data Transactions Language
74. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 74/121
Linguagens num BD pelo padrão SQL ANSI
(Structured Query Language American National
Standards Institute)
DDL – Data Definition Language
DML – Data Manipulation Language
DCL – Data Control Language
DTL – Data Transactions Language
BEGIN TRANSACTION, COMMIT e ROLLBACK
83. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 83/121
● Bad Smells (mal cheiros) em Bancos de Dados
● Fabrízio de Royes Mello
● http://hemingway.softwarelivre.org/fisl17/41b/sala41b-
high-201607140900.ogv
84. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 84/121
● Bad Smells (mal cheiros) em Bancos de Dados
● Fabrízio de Royes Mello
● http://hemingway.softwarelivre.org/fisl17/41b/sala41b-high-
201607140900.ogv
85. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 85/121
● Bad Smells (mal cheiros) em Bancos de Dados
● Fabrízio de Royes Mello
● http://hemingway.softwarelivre.org/fisl17/41b/sala41b-high-
201607140900.ogv
86. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 86/121
● Bad Smells (mal cheiros) em Bancos de Dados
● Fabrízio de Royes Mello
● http://hemingway.softwarelivre.org/fisl17/41b/sala41b-high-
201607140900.ogv
87. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 87/121
● Bad Smells (mal cheiros) em Bancos de Dados
● Fabrízio de Royes Mello
● http://hemingway.softwarelivre.org/fisl17/41b/sala41b-high-
201607140900.ogv
88. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 88/121
● Bad Smells (mal cheiros) em Bancos de Dados
● Fabrízio de Royes Mello
● http://hemingway.softwarelivre.org/fisl17/41b/sala41b-high-
201607140900.ogv
89. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 89/121
● Bad Smells (mal cheiros) em Bancos de Dados
● Fabrízio de Royes Mello
● http://hemingway.softwarelivre.org/fisl17/41b/sala41b-high-
201607140900.ogv
90. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 90/121
● Bad Smells (mal cheiros) em Bancos de Dados
● Fabrízio de Royes Mello
● http://hemingway.softwarelivre.org/fisl17/41b/sala41b-high-
201607140900.ogv
91. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 91/121
● Bad Smells (mal cheiros) em Bancos de Dados
● Fabrízio de Royes Mello
● http://hemingway.softwarelivre.org/fisl17/41b/sala41b-high-
201607140900.ogv
92. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 92/121
● Bad Smells (mal cheiros) em Bancos de Dados
● Fabrízio de Royes Mello
● http://hemingway.softwarelivre.org/fisl17/41b/sala41b-high-
201607140900.ogv
93. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 93/121
● Bad Smells (mal cheiros) em Bancos de Dados
● Fabrízio de Royes Mello
● http://hemingway.softwarelivre.org/fisl17/41b/sala41b-high-
201607140900.ogv
96. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 96/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
97. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 97/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
98. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 98/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
99. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 99/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
100. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 100/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
101. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 101/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
102. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 102/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
103. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 103/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
104. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 104/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
105. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 105/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
106. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 106/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
107. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 107/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
108. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 108/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
109. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 109/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
110. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 110/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
111. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 111/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
112. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 112/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
113. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 113/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
114. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 114/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
115. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 115/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
116. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 116/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
117. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 117/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
118. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 118/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
119. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 119/121
● MongoDB - Tudo o que você precisa saber
● Christiano Anderson de Souza
● http://hemingway.softwarelivre.org/fisl17/41a/sala41a-high-
201607161000.ogv
120. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 120/121
Não tem A melhor linguagem de programação,
Não tem O melhor banco de dados,
Há o que é mais adequado ao problema!
121. CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 121/121
Referências
CAYRES, Paulo Henrique. Modelagem de Banco
de Dados. Rio de Janeiro: RNP/ESR. 2015