Transcript Introdução SQL - Instituto Federal Farroupilha
INSTITUTO FEDERAL FARROUPILHA
Campus Alegrete Curso Técnico em Informática
Banco de Dados
Nota de aula – Linguagem SQL
Profa Msc. Patricia Blini Estivalete
–
Sumário
• Introdução – Histórico – Funcionalidades • Linguagem SQL
Introdução - Histórico
• SQL (Structured Query Language) • Desenvolvida pela IBM - 1970 para BD relacionais • ANSI/ISO - Linguagem-padrão para SGBD relacionais – SQL-1 (86); SQL-2 (92); SQL-3 (99) • Regras para embutir comandos SQL em LP • Atualmente: versão SQL-99
Profa Msc. Patricia Blini Estivalete – Informática 3
Introdução - Funcionalidades
• A SQL possui comandos para: – definição de dados – DDL – consultas e atualizações – DML – definição de visões (views) • segurança e autorizações de acesso
Profa Msc. Patricia Blini Estivalete – Informática 4
Introdução - Funcionalidades
• A SQL possui comandos para: – definição de dados – DDL – consultas e atualizações – DML – definição de visões (views) • segurança e autorizações de acesso – definição de restrições de integridade • restrição atributo • restrição chave • restrição de integridade referencial
Profa Msc. Patricia Blini Estivalete – Informática 5
SQL - DDL
• Criação de um BD – SQL padrão não oferece o comando • BDs são criados via ferramentas do SGBD – SGBDs (SQL Server, DB2, Firebird ) oferecem o comando • create database
nome_BD
• drop database
nome_BD
Profa Msc. Patricia Blini Estivalete – Informática 6
SQL - DDL
• Formato do comando create table:
) CREATE TABLE nome_tabela (
nome_atributo tipo_de_dado [
NOT NULL], primary key (nome_atributo1, nome_atributo2,...), foreign key (nome_atributo) references nome_relação Profa Msc. Patricia Blini Estivalete – Informática 7
SQL - DDL
• Exemplo: BD Bancário
) create table cliente (
cod_cliente int
not null,
nome_cliente varchar (20) rua varchar(30), cidade varchar(30),
primary key
(cod_cliente)
) create table agencia (
cod_agencia int
not null,
nome_agencia varchar(20) cidade varchar(30),
primary key
(cod_agencia)
Profa Msc. Patricia Blini Estivalete – Informática 8
SQL - DDL
) create table Conta (
numero_conta int not null , cod_agencia int
not null,
cod_cliente int
not null,
saldo numeric(10,2),
primary key
(numero_conta, cod_agencia)
foreign key
(cod_agencia)
references
agencia,
foreign key
(cod_cliente)
references
cliente
Profa Msc. Patricia Blini Estivalete – Informática 9
SQL - DDL
•
Tipos de Dados de Atributos Tipo
Cadeia de caracteres
Date e Time
Numéricos
Comentário CHAR (n)
- cadeia de caracteres têm tamanho fixo
VARCHAR (n)
- cadeia de caracteres têm tamanho variável Inclui século, ano, mês, dia, hora, minuto e segundo
INT
os números inteiros de vários tamanhos.
FLOAT
– os números ponto flutuantes.
NUMERIC
– números fixos de casas decimais.
Profa Msc. Patricia Blini Estivalete – Informática 10
Exercício
Criar as tabelas sql para os esquemas abaixo: Grupo
(CodGrupo, NomeGrupo)
Empresa
(CodGrupo, CodEmpresa, NomeEmpresa)
Empregado
(CodGrupo,CodEmpresa, CodEmpregado, NomeEmpregado)
Dependente
(CodGrupo,CodEmpresa, CodEmpregado, NumSequencia, NomeDependente)
Profa Msc. Patricia Blini Estivalete – Informática 10