0% acharam este documento útil (0 voto)
22 visualizações31 páginas

SQL

SQL, ou Structured Query Language, é uma linguagem de consulta estruturada desenvolvida pela IBM em 1974, baseada no modelo relacional e adotada como padrão por órgãos como ANSI e ISO. A linguagem permite a definição, manipulação e controle de dados em bancos de dados, incluindo a criação de tabelas, inserção, atualização e exclusão de dados, além de garantir a integridade e segurança das informações. SQL é amplamente utilizada em sistemas de gerenciamento de banco de dados e é independente de fabricante, oferecendo portabilidade e facilidade de aprendizado.

Enviado por

Pazoca Ue
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
22 visualizações31 páginas

SQL

SQL, ou Structured Query Language, é uma linguagem de consulta estruturada desenvolvida pela IBM em 1974, baseada no modelo relacional e adotada como padrão por órgãos como ANSI e ISO. A linguagem permite a definição, manipulação e controle de dados em bancos de dados, incluindo a criação de tabelas, inserção, atualização e exclusão de dados, além de garantir a integridade e segurança das informações. SQL é amplamente utilizada em sistemas de gerenciamento de banco de dados e é independente de fabricante, oferecendo portabilidade e facilidade de aprendizado.

Enviado por

Pazoca Ue
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 31

SQL

A LINGUAGEM SQL

• SQL - Structured Query Language.

• Foi definida nos laboratórios de pesquisa da IBM em San Jose,


California, em 1974.

• Teve seus fundamentos no modelo relacional.

• Sua primeira versão recebeu o nome de SEQUEL - Structured


English Query Language
A LINGUAGEM SQL

• Órgãos como ANSI e ISO adotaram a SQL como o


padrão oficial de linguagem em ambiente relacional.

• O ANSI publicou as padronizações SQL ANSI-89 e ANSI-


92.

• Revisões da SQL: SQL99 (SQL 3)


A LINGUAGEM SQL

• É uma linguagem usada em SGBDs para:


• Definir estruturas de dados (Ex: criar tabelas)
• Modificar dados no BD (Ex: inserir e alterar dados)
• Especificar restrições de segurança (Ex: privilégios de
acesso)
• Realizar consultas

• Não é uma linguagem case-sensitive


A LINGUAGEM SQL
 Definição de Dados: através da DDL possibilita a definição da estrutura e
organização dos dados

 Manipulação de Dados: através da DML possibilita a manipulação dos dados


armazenados, compreendendo inclusão, consulta, alteração e eliminação..

 Controle de Acesso: protege os dados de manipulações não autorizadas, através de


comandos de autorização de acesso.

 Integridade dos Dados: define as regras de integridade dos dados contra


corrupções, inconsistências e falhas do sistema.

 Controle de Transações: inclui comandos que controlam a especificação do início e


do fim das transações.
A LINGUAGEM SQL
• Independência de fabricante: está incorporada em quase todos os SGBDs em seu
padrão ANSI, com as extensões proprietárias de cada fabricante.

• Portabilidade entre computadores: pode ser usada desde um PC até um mainframe.

• Redução de custos com treinamento: as aplicações podem migrar de ambiente com


custo reduzido em treinamento.

• Facilidade no entendimento: oferece um rápido entendimento, com comandos escritos


em um inglês estruturado de alto nível.

• Múltiplas visões de dados: possibilita levar diferentes visões dos dados a diferentes
usuários.
A LINGUAGEM SQL

• Em todos os exemplos a seguir, será utilizado o exemplo de


uma locadora de DVD

• Tabela Clientes (CodC, nome, cpf, data_nasc, sexo, salario)


• Tabela Dvd (CodD, titulo, genero, duracao, situacao)
• Tabela Locacoes (CodC, CodD, data)

• Observação: os nomes das tabelas e dos atributos não podem


conter acentos ou espaços em branco
CRIANDO TABELAS
 O nome de uma tabela em um banco de dados deverá ser único para cada
proprietário;

 Cada coluna deverá ser criada através da especificação do seu nome, tipo e
tamanho do dado que irá armazenar

 O nome de uma coluna deverá ser único dentro de cada tabela podendo,
entretanto, existir colunas com o mesmo nome em tabelas diferentes.

 Uma tabela representa uma entidade do banco de dados onde cada linha
equivale a uma ocorrência e cada coluna equivale a um atributo dessa
entidade.
CRIANDO TABELAS - SINTAXE
CREATE TABLE tabela(
atributo1 tipo1,
atributo2 tipo2,
...,
restrições de integridade
)
CRIANDO TABELAS
CREATE TABLE cliente(
CodC int not null identity,
nome varchar(80) not null,
cpf char(11) not null,
data_nasc date,
sexo char(1),
salario numeric (9,2),
PRIMARY KEY (CodC),
UNIQUE (cpf),
CHECK (sexo in (‘M’,‘F’)),
CHECK (salario > 0)
)
CRIANDO TABELAS
• Not null – indica que o atributo deverá ser obrigatoriamente informado
pelo usuário na hora de inserir dados na tabela. (Todos os campos, por
default, aceitam valores nulos)

• Identity – indica que o atributo será preenchido automaticamente com


valores auto-incrementados (não é possível definir um valor para esse
atributo na hora de inserir dados)

• Varchar (tamanho) – tipo de String com tamanho de armazenamento


variável, de acordo com os valores inseridos pelo usuário (o tamanho
indicado na criação da tabela é a quantidade máxima de caracteres que
poderão ser armazenados no campo)
CRIANDO TABELAS
• Char (tamanho) – tipo de String com tamanho de armazenamento fixo, de
acordo com a quantidade de caracteres definidos na criação da tabela.

• Date – tipo data no formato ano-mes-dia (Obs: no SQL-Server, o tipo é


datetime)

• Numeric (n,d) – tipo numérico que aceita valores reais (n indica o total de
números e d indica a quantidade de decimais)

• Primary Key – restrição de integridade que define a chave primária da


tabela (se a chave for composta, os nomes devem ser separados por
vírgulas)
CRIANDO TABELAS
 Unique – restrição de integridade que indica que um campo não
poderá receber valores repetidos na tabela (ou seja, dois registros
não podem ter o mesmo valor para esse campo)

 Check – restrição de integridade que indica condições para o


preenchimento de um campo

 In (conjunto de valores) – indica que o valor de um determinado


atributo deve estar presente no conjunto de valores definido, para
que os dados possam ser inseridos na tabela
CRIANDO TABELAS
CREATE TABLE dvd (
CodD int not null identity,
titulo varchar(40) not null,
genero varchar(15),
duracao time,
situacao varchar(12) default (‘Disponível’),
PRIMARY KEY (CodD),
CHECK (situacao in (‘Alugada’,‘Disponível’))
)
CRIANDO TABELAS
• Time – tipo tempo no formato hora:minuto:segundo (Obs:
no SQL-Server, o tipo é datetime)

• Default – indica um valor que será armazenado no atributo


caso não seja informado outro valor pelo usuário
CRIANDO TABELAS
CREATE TABLE locacoes (
CodC int not null,
CodD int not null,
data date,
FOREIGN KEY (CodC) REFERENCES clientes,
FOREIGN KEY (CodD) REFERENCES dvd,
PRIMARY KEY (CodC, CodD)
)
CRIANDO TABELAS
• FOREIGN KEY – restrição de integridade que define uma
chave estrangeira para a tabela

• Obs:
• Para que um atributo seja chave estrangeira de uma tabela, é
necessário que ele seja chave primária da tabela referenciada
• O nome do campo na tabela que terá a chave estrangeira não
precisa ser o mesmo do campo na tabela referenciada (Exemplo: o
campo CodD em locacoes poderia ser substituído por CodDvd), mas
deve ser do mesmo tipo
COMANDOS SQL - INSERÇÃO

Inserção de dados nas tabelas

INSERT INTO tabela(atributo1,atributo2,...)


VALUES(valor1,valor2,...)
Ou
INSERT INTO tabela
VALUES(valor1,valor2,...)
COMANDOS SQL - INSERÇÃO
INSERT INTO clientes (nome,cpf,data_nasc,sexo,salario)
VALUES (‘Ana Moura’, ‘8245738’, ‘1979-10-02’, ‘F’ , 650.39)

INSERT INTO dvd (titulo,genero,duracao)


VALUES (‘Matrix’, ‘Ficção’, ’02:30:00’)

INSERT INTO locacoes


VALUES (1, 1, ‘2003-11-11’)
COMANDOS SQL - INSERÇÃO
• A lista de atributos é usada para indicar que campos da tabela
devem ser preenchidos, e com que valores.

• Se não for incluída, o BD tentará preencher todos os campos da


tabela na sequência em que foram criados.

• Portanto, a lista é obrigatória quando alguns campos não forem


preenchidos, ou quando a ordem dos valores estiver alterada.
COMANDOS SQL - INSERÇÃO
Ex: INSERT INTO dvd VALUES (‘X-Men’, ‘Ação’)
Seria um comando incorreto pois não há como saber a que
atributos se referem os valores.

O correto seria:

INSERT INTO dvd (titulo,genero) VALUES (‘X-Men’,‘Ação’)

Os campos não informados seriam preenchidos com Null (se não


tiverem sido definidos como not null), ou com valores default
definidos na criação da tabela.
COMANDOS SQL - INSERÇÃO
• Campos definidos como IDENTITY não podem assumir valores
informados pelo usuário, e não precisam ser incluídos na lista de
atributos da tabela.

• Os valores desse campo vão sendo incrementados automaticamente


e não são reaproveitados (Ex: mesmo que o DVD de código 5 seja
excluído do banco, nenhum outro DVD receberá esse código )

• No SQL Server, o valor inicial de campos IDENTITY é 1 e o incremento


tem valor 1.
COMANDOS SQL - INSERÇÃO
 Valores do tipo char, varchar, date e time (ou datetime no SQL-
Server) devem ser representados entre apóstrofos (aspas simples
‘ ’).

 No SQL-Server, o formato padrão para datas é YYYY-MM-DD (ano-


mes-dia) e para horas é HH:MM:SS (hora-minuto-segundo)

 As casas decimais dos números devem ser separadas por pontos,


em vez de vírgulas

 Valores do tipo varchar podem conter acentos e espaços em branco


COMANDOS SQL - ATUALIZAÇÃO
Atualização de dados nas tabelas

UPDATE tabela
SET atributo = valor
WHERE condicao
COMANDOS SQL - ATUALIZAÇÃO
• Mudar o salário do cliente com código 1 para 1400
UPDATE clientes
SET salario = 1400
WHERE CodC = 1

• Mudar a situação do DVD de código 1 para alugada


UPDATE dvd
SET situacao = ‘alugada’
WHERE CodD = 1
COMANDOS SQL - ATUALIZAÇÃO
• A cláusula WHERE é opcional no comando UPDATE. Se não
for informada, a atualização será realizada em toda a tabela

• Ex: O comando abaixo muda o preço de todos os DVDs


cadastrados para 2.20
UPDATE dvd
SET preco = 2.20
COMANDOS SQL – EXCLUSÃO
Exclusão de dados das tabelas

DELETE FROM tabela


WHERE condição
COMANDOS SQL - EXCLUSÃO
• Apagar cadastros de todos os clientes do sexo
masculino
DELETE FROM clientes
WHERE sexo = ‘M’

• Apagar cadastros de todos os DVDs de terror


DELETE FROM dvd
WHERE genero = ‘terror’
COMANDOS SQL - EXCLUSÃO
 A cláusula WHERE é opcional no comando DELETE. Se não for
informada, a exclusão será realizada em toda a tabela

Ex: O comando abaixo exclui todas as locacoes cadastradas


DELETE FROM locacoes

 O comando DELETE exclui os dados, mas não exclui a tabela do BD.


• Para excluir a tabela inteira (dados e estrutura), o comando é:
DROP TABLE tabela
DROP TABLE locacoes
COMANDOS SQL – ALTERAÇÃO
DE TABELAS
• Alteração de tabelas para inclusão ou exclusão de campos

• Inclusão
ALTER TABLE tabela
ADD atributo tipo restrição_integridade

• Exclusão
ALTER TABLE tabela
DROP COLUMN atributo
COMANDOS SQL – ALTERAÇÃO
DE TABELAS
• Inclusão do campo ano na tabela DVD
ALTER TABLE dvd
ADD ano int

• Exclusão do campo sexo da tabela Clientes


ALTER TABLE clientes
DROP COLUMN sexo

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy