Na área de gerenciamento de banco de dados, as constraints são regras aplicadas a colunas ou conjuntos de colunas em tabelas de banco de dados para restringir o tipo de dados que podem ser inseridos. Elas garantem a precisão e a confiabilidade dos dados. Neste artigo, vamos explorar o conceito de constraints, seu propósito e sua aplicação prática na Oracle Database.

  1. O que são Constraints?

As Constraints são regras que definem as ações que podem ou não ser realizadas nos dados dentro das tabelas do banco de dados. Elas são usadas para limitar o tipo de dados que podem ser inseridos em uma tabela. Isso significa que as constraints podem garantir que as colunas não contenham dados inválidos ou incompatíveis.

  1. Tipos de Constraints

Na Oracle Database, as constraints podem ser classificadas em cinco tipos principais:

  1. NOT NULL: Essa constraint garante que uma coluna não pode ter um valor NULL.
  2. UNIQUE: Essa constraint garante que todos os valores em uma coluna são diferentes.
  3. PRIMARY KEY: É um tipo especial de constraint UNIQUE, onde não são permitidos valores duplicados ou nulos. Cada tabela no banco de dados deve ter uma chave primária.
  4. FOREIGN KEY: Essa constraint é usada para evitar ações que destruiriam os links entre tabelas.
  5. CHECK: Essa constraint garante que o valor em uma coluna atenda a uma condição específica.

  • Exemplos Práticos

Vamos exemplificar cada tipo de constraint com um exemplo usando a Oracle Database.

  1. NOT NULL
CREATE TABLE Clientes (
    ID number,
    Nome varchar2(255) NOT NULL,
    Email varchar2(255)
);

Nesse exemplo, a constraint NOT NULL garante que a coluna “Nome” sempre terá um valor em cada registro.

  1. UNIQUE
CREATE TABLE Clientes (
    ID numberUNIQUE,
    Nome varchar2(255),
    Email varchar2(255)
);

Aqui, a constraint UNIQUE garante que todos os IDs de cliente serão únicos em todos os registros.

  1. PRIMARY KEY
CREATE TABLE Clientes (
    ID number PRIMARY KEY,
    Nome varchar2(255),
    Email varchar2(255)
);

No exemplo acima, a chave primária está definida para a coluna “ID”. Isso significa que a coluna “ID” não pode conter valores duplicados ou nulos.

  1. FOREIGN KEY
CREATE TABLE Pedidos (
    PedidoID number PRIMARY KEY,
    OrderNo number ,
    ClienteID number ,
    FOREIGN KEY (ClienteID) REFERENCES Clientes(ID)
);

Aqui, a FOREIGN KEY “ClienteID” está referenciando a PRIMARY KEY “ID” na tabela “Clientes”. Isso garante a integridade dos dados entre as tabelas, no caso não poderá ter um pedido sem um cliente estar cadastrado.

  1. CHECK
CREATE TABLE Clientes (
    ID number PRIMARY KEY,
    Nome varchar2(255),
    Idade number ,
    CHECK (Idade >= 18)
);

Neste exemplo, a constraint CHECK garante que a “Idade” dos clientes seja maior ou igual a 18.

As constraints são essenciais para manter a integridade dos dados em um banco de dados Oracle. Elas restringem os tipos de dados que podem ser adicionados a uma tabela, garantindo assim a consistência, a precisão e a confiabilidade dos dados. Como demonstrado, a Oracle Database oferece uma variedade de tipos de constraints para atender a diferentes requisitos de negócios e garantir a melhor qualidade dos dados.

Sobre o autor

Pós graduado em Gestão de Projetos em Tecnologia da Informação pela UNIASSELVI.
Esposo e Pai, curto atividades ao ar livre (Bike, SUP, Natação, Caminhar, Brincar no campo)

Atua com Banco de Dados Oracle desde de 2007. Atualmente é DBA Senior na FLUIDATA Serviços em Banco de dados (www.fluidata.com.br)

Principais atividade Banco de dados:

Implementação, migração, gerenciamento e suporte a produtos Oracle (8i, 9i, 10g, 11g, 12c, 18c, 19c RAC), multiplataforma;
Implementação, migração, gerenciamento e suporte a produtos Microsoft SQL Server (2008 - 2019);
Implementação, migração, gerenciamento e suporte a produtos PostgreSQL (9.3 - 14);
Monitoramento de ambientes 24×7;
Backup e Recovery;
Performance e Tuning;
Alta disponibilidade (HA);
EM database/grid/cloud control;
Conversão de databases;
Standby database / Oracle Data Guard;

Certificações:

Oracle Cloud Infrastructure 2019 Certified Architect AssociateOracle Cloud Infrastructure 2019 Certified Architect Associate
Oracle Database 12c Administrator Certified ProfessionalOracle Database 12c Administrator Certified Professional
Exadata Database Machine Models X2-2 and X2-8 Technology Support SpecialistExadata Database Machine Models X2-2 and X2-8 Technology Support Specialist
Oracle Database 11g Support SpecialistOracle Database 11g Support Specialist
OCP 11g - Oracle Certified Professional AdministratorOCP 11g - Oracle Certified Professional Administrator
OPN Certified Specialist 10g - PartnerNetwork Certified SpecialistOPN Certified Specialist 10g - PartnerNetwork Certified Specialist
Oracle Database 10g Real Applications Clusters AdministratorCertified ExpertOracle Database 10g Real Applications Clusters AdministratorCertified Expert
Oracle Database 10g: Managing Oracle on Linux Certified ExpertOracle Database 10g: Managing Oracle on Linux Certified Expert
OCP 10g - Oracle Certified Professional AdministratorOCP 10g - Oracle Certified Professional Administrator

Principais atividades DEVOPS:

PHP
ASP.net
C#
Docker
Golang
C++
Delphi
Python
HTML5
JavaScript

Você também pode gostar: