aula 8 sql introdução
TRANSCRIPT
Banco de Dados I
AULA VIIISQL–INTRODUÇÃO
Professor: Danyllo Wagner Albuquerque
Relembrando...
Relembrando...
• Falamos sobre:
- Modelo Conceitual- Modelo Lógico- Normalização de Dados- Dicionário de Dados
Objetivos
• Apresentar os conceitos básicos da linguagem SQL e suas subdivisões;
• Apresentar os conceitos introdutórios sobre SGBDvisando a utilização da ferramenta MySQL;
• Ter os conhecimentos básicos para utilização daferramenta MySQL.
Agenda
1. Introdução2. Caracterísiticas3. Divisões SQL
3.1 DDL3.2 DML3.3 DQL3.4 DCL3.5 DTL
4. Principais SGBDs5. Tipos de Dados6. MySQL7. Conclusão
1–Introdução
- Desenvolvida pelo depto de pesquisa da IBM na década de 1970 (System R) - Sequel
- Linguagem padrão de BD Relacionais
- Apresenta várias padrões evolutivos: SQL86, SQL89(SQL1), SQL92 (SQL2), SQL99(SQL3)
- A última versão definida pela ANSI/ISO traz características novas como: store procedures, triggers, suporte à programação OO, XML, entre muitas outras (SQL2003)
- Diferentes fornecedores de SGBDS apresentam versões de SQL com algumas particularidades
2-Características
- Estilo declarativo, não procedimental
- Permite otimizações
- Utilizadas por várias classes de usuários
- Sintaxe simples e bem definida
- Presente em todos os SGBDs Relacionais
- É incorporada comumente a uma outra linguagem
- Não é uma linguagem completa como C, Java ou Delphi
- Portável entre sistema operacionais
3-Divisões SQL
• DDL (Data Definition Language): Linguagem de Definição de Dados
• DML (Data Manipulation Language): Linguagem de Manipulação de Dados
• DQL (Data Query Language): Linguagem de Consulta de Dados
• DCL (Data Control Language): Linguagem de Controle de Dados
• DTL (Data Transaction Language): Linguagem de Transação de Dados
3.1-DDL
• Linguagem de Definição de Dados
CREATE: Cria uma estrutura
ALTER: Altera uma estrutura
DROP: Exclui uma estrutura
3.2-DML
• Linguagem de Manipulação de Dados
INSERT: Insere dados
UPDATE: Altera dados
DELETE: Exclui dados
3.3-DQL
• Linguagem de Consulta de Dados
SELECT: Retorna dados
Ordenação de dados
Agrupamento de dados
Funções aritméticas
Filtros de seleção
3.4-DCL
• Linguagem de Controle de Dados
GRANT: Habilita acesso a dados e operações
REVOKE: Revoga acesso a dados e operações
3.5-DTL
• Linguagem de Transação de Dados
START TRANSACTION: Inicia a transação
COMMIT: Concretiza a transação
ROLLBACK: Anula a transação
4-Principais SGBDs
5-Tipos de Dados
6-MySQL
- O MySQL é um sistema de gerenciamento de banco de dados (SGBD), que utiliza a linguagem SQL (Linguagem de Consulta Estruturada, do inglês Structured QueryLanguage) como interface.
- É atualmente um dos bancos de dados mais populares, com mais de 10 milhões de instalações pelo mundo.
- Entre os usuários do banco de dados MySQLestão: NASA, Friendster, Banco Bradesco,Dataprev, HP, Nokia, Sony,Lufthansa, U.S. Army, U.S.Federal Reserve Bank, google e outros.
6-MySQL
- O MySQL foi criado na Suécia por dois suecos e um finlandês: David Axmark, Allan Larsson e Michael "Monty" Widenius, que têm trabalhado juntos desde a década de 1980.
- Hoje seu desenvolvimento e manutenção empregam aproximadamente 400 profissionais no mundo inteiro, e mais de mil contribuem testando o software, integrando-o a outros produtos, e escrevendo a respeito dele.
6-MySQL
- No dia 16 de Janeiro de 2008, a MySQL AB, desenvolvedora do MySQL foi adquirida pela Sun Microsystems, por US$ 1 bilhão, um preço jamais visto no setor de licenças livres.
- No dia 20 de Abril de 2009 a Oracle compra a Sun Microsystems e todos o seus produtos, incluindo o MySQL.
- Após investigações da Comissão Europeia sobre a aquisição para evitar formação de monopólios no mercado a compra foi autorizada e hoje a Sun faz parte da Oracle
6.1-Características
• Portabilidade (suporta praticamente qualquerplataforma atual);
• Compatibilidade (existem drivers ODBC, JDBC e .NET e módulos de interface para diversas linguagens de programação, como Delphi, Java, C/C++, C#, Visual Basic, Python, Perl,PHP, ASP e Ruby)
• Excelente desempenho e estabilidade;
• Pouco exigente quanto a recursos de hardware;
• Facilidade de uso;
• É um Software Livre com base na GPL;
6.1-Características
• Contempla a utilização de vários Storage Engines comoMyISAM, InnoDB, Falcon, BDB, Archive, Federated, CSV, Solid…
• Suporta controle transacional;
• Suporta Triggers;
• Suporta Cursors (Non-Scrollable e Non-Updatable);
• Suporta Stored Procedures e Functions;
• Replicação facilmente configurável;
• Interfaces gráficas de fácil utilização cedidos pelaMySQL Inc.
Dúvidas?
6-Conclusão