Este documento fornece uma introdução à linguagem SQL, incluindo sua história, principais funções e comandos. Descreve o que é SQL, sua origem e desenvolvimento ao longo do tempo. Explica as principais linguagens que compõem SQL - DDL, DML, DCL e DQL - e seus comandos e funções associados. Fornece também uma bibliografia de recursos adicionais sobre SQL.
1. Escola Secundária de Penafiel
Structured Query Language
Linguagem Estruturada para Pesquisas
Elaborado por: Valquíria Müller nº: 21
Valter Couto nº: 22
2. Manual SQL Escola Secundária de Penafiel 2011/2012
Índice
O que é o SQL? ................................................................................................................. 4
História SQL ......................................................................................................................5
Principais funções do SQL ...............................................................................................7
Linguagem de Manipulação de Dados: .......................................................................7
Linguagem de Manipulação de Dados (DML): ...........................................................7
Linguagem de Controlo de Dados (DCL) ................................................................... 8
Linguagem de Transacção de Dados (DTL) ............................................................... 8
Bibliografia ...................................................................................................................... 9
2
3. Manual SQL Escola Secundária de Penafiel 2011/2012
Introdução
Este manual consiste primeiramente de uma referência de funções, mas ele também
contém uma referência da linguagem, explicações sobre as mais importantes características
do SQL, e outras informações suplementares.
3
4. Manual SQL Escola Secundária de Penafiel 2011/2012
O que é o SQL?
O programa MySQL é um servidor robusto de bancos de dados SQL (Structured
Query Language - Linguagem Estruturada para Pesquisas) muito rápido, multi-tarefa
e multi-usuário. O Servidor MySQL pode ser usado em sistemas de produção com
alta carga e missão crítica bem como pode ser embutido em programa de uso em
massa. O programa MySQL é de Licença Dupla. Os usuários podem escolher entre
usar o programa MySQL como um produto Open Source/Free Software sob os
termos da GNU General Public License ou podem comprar uma licença comercial
padrão da MySQL AB.
Exemplos de uma base de dados:
4
5. Manual SQL Escola Secundária de Penafiel 2011/2012
História SQL
O software MySQL foi criado na Suécia por dois suecos e um finlandês: David
Axmark, Allan Larsson e Michael "Monty" Widenius, que trabalharam juntos desde a
década de 1980. Hoje seu desenvolvimento e manutenção empregam
aproximadamente 400 profissionais a nível universal. O sucesso do MySQL deve-se
em grande medida à fácil integração com o PHP incluído, quase que
obrigatoriamente, nos pacotes de hospedagem de sites da Internet oferecidos
actualmente. Empresas como Yahoo! Finance, MP3.com, Motorola, NASA, Silicon
Graphics e Texas Instruments usam o MySQL em aplicações de missão crítica. A
Wikipédia é um exemplo de utilização do MySQL em sites de grande audiência.
O MySQL hoje suporta Unicode, Full Text Indexes, replicação, Hot Backup, GIS,
OLAP e muitos outros recursos de banco de dados.
Mapa de desenvolvimento do MySQL, incluindo principais recursos implementados
ou planejados para o MySQL 4.0, 4.1, 5.0 e 5.1. A seguinte seção fornece informação
para cada distribuição. O planeamento para alguns dos recursos mais requisitados
estão listadas na tabela a cima.
5
6. Manual SQL Escola Secundária de Penafiel 2011/2012
Características do My SQL
Portabilidade (suporta praticamente qualquer plataforma actual);
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;
Contempla a utilização de vários Storage Engines como MyISAM, InnoDB, Falcon,
BDB, Archive, Federated, CSV, Solid…
Suporta controlo transaccional;
Suporta Triggers;
Suporta Cursors (Non-Scrollable e Non-Updatable);
Suporta Stored Procedures e Functions;
Replicação facilmente configurável;
Interfaces gráficas (MySQL Toolkit) de fácil utilização cedidos pela MySQL Inc.
6
7. Manual SQL Escola Secundária de Penafiel 2011/2012
Principais funções do SQL
Linguagem de Manipulação de Dados:
Linguagem de Manipulação de Dados (DML):
Linguagem de manipulação de dados (ou DML, de Data Manipulation Language) é o grupo
de comandos dentro da linguagem SQL utilizado para a recuperação, inclusão, remoção e
modificação de informações em bancos de dados.
Os principais comandos DML são:
SELECT (Selecção de Dados);
INSERT (Inserção de Dados);
UPDATE (Actualização de Dados);
DELETE (Exclusão de Dados);
DROP (Exclusão de tabelas).
Linguagem de Definição de Dados (DDL)
Linguagem de definição de dados (ou DDL, de Data Definition Language) é um conjunto de
comandos dentro da SQL usada para a definição das estruturas de dados, fornecendo as
instruções que permitem a criação, modificação e remoção das tabelas, assim como criação
de índices. Estas instruções SQL permitem definir a estrutura de uma base de dados,
incluindo as linhas, colunas, tabelas, índices, e outros métodos.
7
8. Manual SQL Escola Secundária de Penafiel 2011/2012
Entre os principais comandos DDL estão:
CREATE (Criar);
DROP (deletar);
ALTER (alterar).
Linguagem de Controlo de Dados (DCL)
Linguagem de controlo de dados (ou DCL, de Data Control Language) é o grupo de
comandos que controla os aspectos de autorização de dados e licenças de usuários para
controlar quem tem acesso para ver ou manipular dados dentro do banco de dados, ou
seja, o administrador.
Palavras-chaves da DCL:
GRANT (autoriza ao usuário executar operações);
REVOKE (remove ou restringe a capacidade de um usuário de executar operações);
Outros comandos DCL:
ALTER PASSWORD;
CREATE SYNONYM;
DROP VIEW;
Linguagem de Transacção de Dados (DTL)
Linguagens de transacção de dados (Data Transaction Language) é um conjunto de
instruções de controlo de transacção servem para gerenciar as alterações feitas por
instruções DML.
Duas declarações de controlo de transacção:
COMMIT (envia todos os dados das mudanças permanentemente);
ROLLBACK (faz com que as mudanças nos dados existentes desde o último
COMMIT sejam descartadas);
Linguagem de Consulta de Dados (DQL)
Embora tenha apenas um comando, a DQL é a parte do SQL mais utilizada.
Comandos DQL:
SELECT (permite ao usuário especificar uma consulta ("Query") como uma descrição do
resultado desejado. Esse comando é composto de várias cláusulas e opções, possibilitando
elaborar consultas das mais simples às mais elaboradas).
8