logo

SQL | Restrições

Restrições SQL são elementos essenciais projeto de banco de dados relacional que garantem o integridade precisão e confiabilidade dos dados armazenados em um banco de dados. Ao impor regras específicas nas colunas da tabela, as restrições SQL ajudam a manter a consistência dos dados, evitando entradas de dados inválidas e otimizando o desempenho da consulta.

Neste artigo explicaremos detalhadamente as restrições SQL mais comuns, fornecendo exemplos claros e explicando como implementá-las de forma eficaz.

O que são restrições SQL?

Restrições SQL são regras aplicadas a colunas ou tabelas em um banco de dados relacional limitar o tipo de dados que podem ser inserido atualizado ou excluído . Essas regras garantem que os dados sejam válidos, consistentes e estejam de acordo com a lógica de negócios ou requisitos de banco de dados . As restrições podem ser aplicadas durante a criação da tabela ou posteriormente usando o método ALTER TABLE declaração. Eles desempenham um papel vital na manutenção da qualidade e integridade do seu banco de dados.



Tipos de restrições SQL 

SQL fornece vários tipos de restrições para gerenciar diferentes aspectos da integridade dos dados. Essas restrições são essenciais para garantir que os dados atendam aos requisitos de precisão consistência e validade . Vamos examinar cada um deles com explicações detalhadas e exemplos.

1. Restrição NÃO NULA

O NÃO NULO restrição garante que uma coluna não pode conter valores NULL. Isto é particularmente importante para colunas onde um valor é essencial para identificar registros ou realizar cálculos. Se uma coluna for definida como NÃO NULO cada linha deve incluir um valor para essa coluna.

Exemplo:

CREATE TABLE Student  
(
ID int(6) NOT NULL
NAME varchar(10) NOT NULL
ADDRESS varchar(20)
);

Explicação: No exemplo acima, tanto oIDeNAMEcolunas são definidas com o NÃO NULO restrição que significa que cada aluno deve ter umIDeNAMEvalor.

2. Restrição ÚNICA

O EXCLUSIVO A restrição garante que todos os valores em uma coluna sejam distintos em todas as linhas de uma tabela. Ao contrário do CHAVE PRIMÁRIA que requer exclusividade e não permite NULLs, a restrição UNIQUE permite valores NULL, mas ainda impõe exclusividade para entradas não NULL.

Kat Timpf é advogada

Exemplo:

CREATE TABLE Student  
(
ID int(6) NOT NULL UNIQUE
NAME varchar(10)
ADDRESS varchar(20)
);

Explicação : Aqui oIDcoluna deve ter valores únicos, garantindo que dois alunos não possam compartilhar o mesmoID. Podemos ter mais de um EXCLUSIVO restrição em uma tabela.

3. Restrição de CHAVE PRIMÁRIA  

UM CHAVE PRIMÁRIA restrição é uma combinação do NÃO NULO e EXCLUSIVO restrições. Ele identifica exclusivamente cada linha de uma tabela. Uma tabela só pode ter um CHAVE PRIMÁRIA e não pode aceitar valores NULL. Normalmente é usado para a coluna que servirá como identificador de registros.

Exemplo:

CREATE TABLE Student  
(
ID int(6) NOT NULL UNIQUE
NAME varchar(10)
ADDRESS varchar(20)
PRIMARY KEY(ID)
);

Explicação: Neste caso oIDcoluna é definida como a chave primária garantindo que o ID de cada aluno seja único e não possa ser NULO.

4. Restrição de CHAVE ESTRANGEIRA

UM CHAVE ESTRANGEIRA restrição vincula uma coluna em uma tabela ao chave primária em outra tabela. Esse relacionamento ajuda a manter integridade referencial garantindo que o valor no chave estrangeira coluna corresponde a um registro válido na tabela referenciada.

Tabela de pedidos:

O_IDPEDIDO_NÃOC_ID
122533
233253
345212
485321

Tabela de Clientes:

C_IDNOMEENDEREÇO
1RAMESHDÉLHI
2CERTONOIDA
3DHARMESHGURGAON

Como podemos ver claramente que o campo C_ID em Tabela de pedidos é o chave primária na tabela Clientes, ou seja, identifica exclusivamente cada linha na Clientes mesa. Portanto é uma tabela de Chave Estrangeira em Pedidos. 

Exemplo:

como obter emojis do iphone no android
CREATE TABLE Orders  
(
O_ID int NOT NULL
ORDER_NO int NOT NULL
C_ID int
PRIMARY KEY (O_ID)
FOREIGN KEY (C_ID) REFERENCES Customers(C_ID)
)

Explicação: Neste exemplo oC_IDcoluna noOrderstabela é uma chave estrangeira que faz referência aoC_IDcoluna noCustomersmesa. Isso garante que apenas IDs de cliente válidos possam ser inseridos noOrdersmesa.

5. VERIFICAR restrição

O VERIFICAR A restrição nos permite especificar uma condição que os dados devem satisfazer antes de serem inseridos na tabela. Isso pode ser usado para impor regras, como garantir que o valor de uma coluna atenda a determinados critérios (por exemplo, a idade deve ser superior a 18 anos)

Exemplo:

CREATE TABLE Student  
(
ID int(6) NOT NULL
NAME varchar(10) NOT NULL
AGE int NOT NULL CHECK (AGE >= 18)
);

Explicação: Na tabela acima o VERIFICAR A restrição garante que apenas alunos com 18 anos ou mais possam ser inseridos na tabela.

6. Restrição PADRÃO

O PADRÃO restrição fornece um valor padrão para uma coluna quando nenhum valor é especificado durante a inserção. Isto é útil para garantir que certas colunas sempre tenham um valor significativo, mesmo que o usuário não forneça um

Exemplo:

CREATE TABLE Student  
(
ID int(6) NOT NULL
NAME varchar(10) NOT NULL
AGE int DEFAULT 18
);

Explicação: Aqui, se nenhum valor for fornecido paraAGEdurante uma inserção, o valor padrão de 18 será atribuído automaticamente.

tente pegar o bloco em java

Como especificar restrições em SQL

As restrições podem ser especificadas durante o processo de criação da tabela usando o método CREATE TABLE declaração. Além disso, as restrições podem ser modificadas ou adicionadas às tabelas existentes usando oALTER TABLEdeclaração.

Sintaxe para criar restrições:

CREATE TABLE nome_tabela

(

coluna1 tipo de dados [nome_da_restrição]

coluna2 tipo_dados [nome_da_restrição]

coluna3 tipo_dados [nome_da_restrição]

...

);

Também podemos adicionar ou remover restrições após a criação de uma tabela:

Exemplo para adicionar uma restrição:

ALTER TABLE Student  
ADD CONSTRAINT unique_student_id UNIQUE (ID);

Conclusão

As restrições SQL são essenciais para manter integridade de dados e garantir consistência em bancos de dados relacionais. Compreender e implementar essas restrições de forma eficaz ajudará no projeto de bancos de dados robustos e livres de erros. Ao aproveitar NÃO NULO CHAVE PRIMÁRIA ÚNICA CHAVE ESTRANGEIRA VERIFICAÇÃO PADRÃO e ÍNDICE você pode garantir que seu banco de dados esteja otimizado para precisão e desempenho .

Criar questionário