COBOL Dicas
  • Home
  • COBOL
  • CICS
  • DB2
  • JCL
  • Códigos de Erro
  • Exemplos de Código
  • Fórum
  • Blog / Notícias
  • YouTube
  • 🛢️ Introdução ao DB2
  • 🛢️ Modelo de Dados Relacional
  • 🛢️ Chave (Key)
  • 🛢️ Tipos de Dados

Comandos DB2

  • 🛢️ ALTER
  • 🛢️ CREATE
  • 🛢️ DELETE
  • 🛢️ DROP
  • 🛢️ Funções Incorporadas (Built-in Functions)
  • 🛢️ INDEX (CREATE INDEX / DROP INDEX)
  • 🛢️ INSERT
  • 🛢️ MERGE
  • 🛢️ SELECT
  • 🛢️ TRUNCATE
  • 🛢️ UPDATE
  • 🛢️ VIEW (CREATE VIEW / DROP VIEW)

Cláusulas DB2

  • 🛢️ CASE / COALESCE / NULLIF
  • 🛢️ DISTINCT
  • 🛢️ EXISTS / NOT EXISTS
  • 🛢️ GROUP BY
  • 🛢️ HAVING
  • 🛢️ INNER JOIN
  • 🛢️ JOIN (Junção de Tabelas)
  • 🛢️ Operadores de Condição: BETWEEN, IN, LIKE, IS NULL, NOT
  • 🛢️ ORDER BY
  • 🛢️ SUBQUERIES (Subconsultas)
  • 🛢️ UNION / UNION ALL
  • 🛢️ WHERE
  1. Início
  2. DB2
  3. Comandos DB2

🛢️ CREATE

🧠 Explicação

O comando CREATE é utilizado no DB2 para criar objetos no banco de dados, como bancos propriamente ditos (DATABASE), tabelas (TABLE) e índices (INDEX).
Ele define estrutura, tipos de dados e restrições para cada objeto criado, como PRIMARY KEY, FOREIGN KEY, NOT NULL e mais.

🔧 Usos mais comuns

  • Criar um banco de dados com CREATE DATABASE.

  • Definir tabelas com seus campos e regras de integridade.

  • Criar índices para otimizar buscas e garantir unicidade.

  • Relacionar tabelas com chaves estrangeiras (FOREIGN KEY).

🧾 Sintaxe básica

CREATE DATABASE nome_do_banco;

CREATE TABLE nome_da_tabela (
   nome_coluna1 TIPO [NOT NULL],
   nome_coluna2 TIPO [NOT NULL],
   ...
   PRIMARY KEY (coluna_pk),
   FOREIGN KEY (coluna_fk) REFERENCES outra_tabela(coluna)
);

Exemplo real para criar um banco e suas tabelas:

CREATE DATABASE TRABALHO;
-- Abra o banco
OPEN DATABASE TRABALHO;

📁 Exemplo prático – Tabela DEPARTAMENTO

CREATE TABLE Dept (
   DepNume  INTEGER(4) NOT NULL,
   DepNome  CHAR(20)   NOT NULL,
   DepLoca  CHAR(20)   NOT NULL,
   DepOrca  INTEGER(12,2),
   PRIMARY KEY (DepNume)
);

CREATE UNIQUE INDEX DepNum ON Dept (DepNume ASC);

👨‍💼 Exemplo prático – Tabela EMPREGADOS

CREATE TABLE Emp (
   EmpNume   INTEGER(5)     NOT NULL,
   EmpNome   CHAR(30)       NOT NULL,
   EmpGere   INTEGER(5),
   EmpServ   CHAR(20),
   DepNume   INTEGER(4)     NOT NULL,
   EmpAdmi   DATE           NOT NULL,
   EmpSala   INTEGER(10,2),
   EmpComi   INTEGER(10,2),
   PRIMARY KEY (EmpNume),
   FOREIGN KEY (DepNume)
       REFERENCES Dept
       ON DELETE RESTRICT
       ON UPDATE CASCADE
);

CREATE UNIQUE INDEX EmpNum ON Emp (EmpNume ASC);
CREATE INDEX EmpDep ON Emp (DepNume ASC);

📌 Regras importantes

  • Sempre crie primeiro as tabelas principais (mestre), antes das que dependem delas (filhas).

  • Defina chaves primárias e estrangeiras para garantir integridade relacional.

  • Índices ajudam na performance e garantem unicidade quando necessário.

  • O ON DELETE RESTRICT impede que um departamento com funcionários seja excluído sem cuidado.

  • O ON UPDATE CASCADE atualiza automaticamente os códigos nas tabelas filhas.

💡 Dicas

  • Planeje antes de sair criando — normalize seus dados e defina bem as relações.

  • Evite campos genéricos ou que aceitam NULL sem necessidade.

  • Use nomes de tabelas e colunas significativos e padronizados.

  • Utilize arquivos .SQL para organizar a criação do banco e facilitar manutenção (TABS.SQL, DADOS.SQL).

 

✅ Conclusão

O CREATE no DB2 é o ponto de partida de qualquer banco de dados bem estruturado. Ao dominar a criação de tabelas, índices e relacionamentos, você garante consistência, desempenho e facilidade de manutenção no ambiente de dados, especialmente em aplicações COBOL no mainframe.

Tópicos recentes - DB2

  • Primeira consulta SQL no DB2: um marco para todo programador! - por: bopnet

Siga o COBOL Dicas

  • 📺 YouTube | 📘 Facebook | 💼 LinkedIn | 🐦 X (Twitter) | 📷 Instagram | 💬 Fórum COBOL | 📂 GitHub | ✉️ E-mail

© 2025 COBOL Dicas | Powered by Joomla | Desenvolvido por José Roberto

  • ⚖️ Direito de Conteúdo
  • ❓ FAQ / Guia Rápido
  • 📩 Contato
  • 📜 Informações Legais
  • 🔒 Política de Privacidade
  • 👤 Quem Somos