Ir para conteúdo

Stuctured Query Language


Posts Recomendados

Structured Query Language, ou Linguagem de Consulta Estruturada ou SQL, é uma linguagem de pesquisa declarativa para banco de dados relacional (bases de dados relacionais). Muitas das características originais do SQL foram inspiradas na álgebra relacional.

 

SQL é normalmente pronunciado em português como "esse-quê-ele", porém sua pronúcia correta deveria ser "síquel", do inglês "sequel", ou "alguma coisa que segue outra coisa". SQL é uma brincadeira com o nome da primeira linguagem de consulta QUEL.

 

A linguagem SQL é um grande padrão de banco de dados. Isto decorre da sua simplicidade e facilidade de uso. Ela se opõe a outras linguagens no sentido em que uma consulta SQL especifica a forma do resultado e não o caminho para chegar a ele. Ela é um linguagem declarativa em oposição a outras linguagens procedurais. Isto reduz o ciclo de aprendizado daqueles que se iniciam na linguagem.

 

Embora o SQL tenha sido originalmente criado pela IBM, rapidamente surgiram vários "dialectos" desenvolvidos por outros produtores. Essa expansão levou à necessidade de ser criado e adaptado um padrão para a linguagem. Esta tarefa foi realizada pela American National Standards Institute (ANSI) em 1986 e ISO em 1987.

 

O SQL foi revisto em 1992 e a esta versão foi dado o nome de SQL-92. Foi revisto novamente em 1999 e 2003 para se tornar SQL:1999 (SQL3) e SQL:2003, respectivamente. O SQL:1999 usa expressões regulares de emparelhamento, queries recursivas e gatilhos (triggers). Também foi feita uma adição controversa de tipos não-escalados e algumas características de orientação a objeto. O SQL:2003 introduz características relacionadas ao XML, sequências padronizadas e colunas com valores de auto-generalização (inclusive colunas-identidade).

 

Tal como dito anteriormente, o SQL, embora padronizado pela ANSI e ISO, possui muitas variações e extensões produzidos pelos diferentes fabricantes de sistemas gerenciadores de bases de dados. Tipicamente a linguagem pode ser migrada de plataforma para plataforma sem mudanças estruturais principais.

 

Outra aproximação é permitir para código de idioma processual ser embutido e interagir com o banco de dados. Por exemplo, o Oracle e outros incluem Java na base de dados, enquanto o PostgreSQL permite que funções sejam escritas em Perl, Tcl, ou C, entre outras linguagens.

 

Palavras-chaves em SQL

 

DML - Linguagem de Manipulação de Dados

Primeiro há os elementos da DML (Data Manipulation Language - Linguagem de Manipulação de Dados). A DML é um subconjunto da linguagem usada para selecionar, inserir, atualizar e apagar dados.

 

SELECT é o comumente mais usado do DML, comanda e permite ao usuário especificar uma query como uma descrição do resultado desejado. A questão não especifica como os resultados deveriam ser localizados.

INSERT é usada para somar uma fila (formalmente uma tupla) a uma tabela existente.

UPDATE para mudar os valores de dados em uma fila de tabela existente.

DELETE permite remover filas existentes de uma tabela.

BEGIN WORK (ou START TRANSACTION, dependendo do dialeto SQL) pode ser usado para marcar o começo de uma transação de banco de dados que pode ser completada ou não.

COMMIT envia todos os dados das mudanças permanentemente.

ROLLBACK faz com que as mudanças nos dados existentes desde que o último COMMIT ou ROLLBACK sejam descartadas.

COMMIT e ROLLBACK interagem com áreas de controle como transação e locação. Ambos terminam qualquer transação aberta e liberam qualquer cadeado ligado a dados. Na ausência de um BEGIN WORK ou uma declaração semelhante, a semântica de SQL é dependente da implementação.

 

DDL - Linguagem de Definição de Dados

O segundo grupo é a DDL (Data Definition Language - Linguagem de Definição de Dados). Uma DDL permite ao usuário definir tabelas novas e elementos associados. A maioria dos bancos de dados de SQL comerciais tem extensões proprietárias no DDL.

 

Os comandos básicos da DDL são:

CREATE cria um objeto (uma Tabela, por exemplo) dentro da base de dados.

DROP apaga um objeto do banco de dados.

 

Alguns sistemas de banco de dados usam o comando ALTER, que permite ao usuário alterar um objeto, por exemplo, adicionando uma coluna a uma tabela existente.

 

outros comandos DDL:

ALTER TABLE

CREATE INDEX

ALTER INDEX

DROP INDEX

CREATE VIEW

DROP VIEW

 

DCL - Linguagem de Controle de Dados

O terceiro grupo é o DCL (Data Control Language - Linguagem de Controle de Dados). DCL 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.

 

Duas palavras-chaves da DCL:

 

GRANT - autoriza ao usuário executar ou setar operações.

REVOKE - remove ou restringe a capacidade de um usuário de executar operações.

outros comandos DCL:

 

ALTER PASSWORD

CREATE SYNONYM

 

[editar] DQL - Linguagem de Consulta de Dados

Embora tenha apenas um comando a DQL é a parte da SQL mais utilizada. O comando SELECT é composta de várias cláusulas e opções, possibilitando elaborar consultas das mais simples as mais elaboradas. Exemplos:

 

SELECT

nome

FROM

pessoas;

 

SELECT

aP.codigo,

aP.nome,

aP.data_nascimento,

aO.nome,

aO.local

FROM

pessoas aP,

objetos aO,

WHERE

aP.codigo = aO.codigo_pessoa and

aP.codigo = (

SELECT

codigo_pessoa

FROM

catalogo

WHERE

cod_catalogo = 5

);

 

Obs.: O SELECT também é considerado um comando DML.

 

Sistemas de Banco de Dados que usam SQL

Apache Derby

Caché

DB2

Ingres

InterBase

MySQL

Oracle

PostgreSQL

Microsoft SQL Server

SQLite

Sybase

Informix

Firebird

HSQLDB HSQLDB, banco de dados feito em Java

PointBase PointBase, banco de dados relacional feito em Java

 

Créditos: Wikipédia 95%, Lordfire 5%

Link para o comentário
Compartilhar em outros sites

  • 1 year later...
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...