Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

Aula 6 — Constraints no SQL Server
(Completa)
Quando a gente cria uma tabela, não basta apenas definir os tipos de dados. Precisamos
também dizer para o banco quais são as regras que os dados precisam seguir. Essas
regras são chamadas de CONSTRAINTS. Pensa nas constraints como "guardinhas" que
ficam vigiando os dados e impedem que a gente cometa erros bobos, como cadastrar um
pedido para um cliente que não existe, deixar o campo de e-mail vazio, ou permitir preços
negativos.
1. Tipos principais de CONSTRAINTS no SQL Server
Nome Função
PRIMARY KEY Define a chave primária
FOREIGN KEY Garante integridade entre tabelas
UNIQUE Garante que não haverá valores repetidos
NOT NULL Campo obrigatório
CHECK Cria regras de validação
DEFAULT Define valores padrão
2. PRIMARY KEY (Chave Primária)
Garante que cada registro da tabela será único. Nenhum valor pode ser nulo
(automaticamente aplica NOT NULL). Só pode existir uma primary key por tabela.
CREATE TABLE Clientes (
 ClienteID INT PRIMARY KEY,
 Nome VARCHAR(100) NOT NULL
);
3. FOREIGN KEY (Chave Estrangeira)
Liga uma tabela à outra. Garante que o valor existe na tabela referenciada. Evita registros
órfãos.
CREATE TABLE Vendas (
 VendaID INT PRIMARY KEY,
 ClienteID INT,
 FOREIGN KEY (ClienteID) REFERENCES Clientes(ClienteID)
);
Tradução simples: Só posso gravar uma venda para um ClienteID que já existe na tabela
Clientes.
4. UNIQUE (Valor Único)
Garante que os valores dessa coluna não se repitam.
CREATE TABLE Clientes (
 ClienteID INT PRIMARY KEY,
 Email VARCHAR(150) UNIQUE
);
Agora o mesmo e-mail não pode ser cadastrado para dois clientes.
Importante: Pode ter várias UNIQUE em uma mesma tabela. UNIQUE não implica NOT
NULL (a menos que você coloque junto).
5. NOT NULL (Campo Obrigatório)
Garante que o campo precisa ser preenchido.
CREATE TABLE Clientes (
 ClienteID INT PRIMARY KEY,
 Nome VARCHAR(100) NOT NULL
);
Se tentar cadastrar um cliente sem nome, o SQL Server não deixa.
6. CHECK (Validação de valores permitidos)
Permite criar regras personalizadas para os dados.
CREATE TABLE Produtos (
 ProdutoID INT PRIMARY KEY,
 Preco DECIMAL(10,2) CHECK (Preco >= 0)
);
CREATE TABLE Enderecos (
 EnderecoID INT PRIMARY KEY,
 Estado CHAR(2) CHECK (LEN(Estado) = 2)
);
7. DEFAULT (Valor padrão automático)
Preenche automaticamente um valor caso o usuário não informe.
CREATE TABLE Clientes (
 ClienteID INT PRIMARY KEY,
 DataCadastro DATE DEFAULT GETDATE()
);
8. Combinando Constraints
As constraints podem ser usadas juntas na criação da tabela:
CREATE TABLE Cursos (
 CursoID INT PRIMARY KEY,
 NomeCurso VARCHAR(100) UNIQUE NOT NULL,
 Preco DECIMAL(10,2) CHECK (Preco >= 0) NOT NULL,
 DataCadastro DATE DEFAULT GETDATE()
);
9. Por que isso é tão cobrado em entrevistas?
Entende como proteger a qualidade do banco.
Sabe como evitar problemas de integridade.
Pensa em modelagem sólida, não só em “rodar query”.
Mostra conhecimento de arquitetura de dados profissional.
10. Resumão Visual das CONSTRAINTS
Constraint Função
PRIMARY KEY Identifica cada linha de forma única
FOREIGN KEY Liga tabelas entre si
UNIQUE Não permite duplicatas
NOT NULL Obriga preenchimento
CHECK Valida regras específicas
DEFAULT Preenche automaticamente um valor
Prontinho! Agora você domina as principais regras de integridade de dados no SQL
Server!

Mais conteúdos dessa disciplina