Bom, neste post a gente vai falar de alguns conceitos básicos e muito importantes para o entendimento de um Banco de Dados ou RDBMS (Relational Database Management System) e que obviamente não poderiam ficar de fora nesta série de posts para o aprendizado do DB2

No final iremos fazer alguns exemplos com labs para melhor absorção. Este conteúdo pode ser consultado também no e-book Getting Started with DB2 Express-C, capítulo 8, inclusive com exercícios de fixação:

http://goo.gl/ka9S

– Esquema ou Schema:

São definidos conceitualmente como sendo o “dono” ou owner de um grupo de objetos dentro do Banco de Dados.

Exemplo: Tabela: PES.PONTO

Onde o nome da tabela é PONTO e o esquema é PES.

Então, pra que serve o Esquema?

Simples:

Agrupar de maneira lógica um grupo de objetos relacionados, fornecer uma indicação de propriedade e uma referência para acessos de aplicativos ou transações

– Sinônimos públicos:

Este conceito foi introduzido a partir da versão 9.7 no DB2. Funciona sem está relacionado a um schema específico, ou seja, não está vinculado a nenhum owner.

Exemplo:

Criar um sinônimo publico da tabela PES.FERIADO

Comando: create public synonym FERIADO for table PES.FERIADO;

Desta forma a tabela FERIADO poderá ser vista e acessada sem precisar pré-fixar o esquema e por qualquer owner do Banco de Dados.

– Tabelas

É o velho conceito, é uma coleção de dados organizados de forma lógica em colunas e linhas.

Para criar esta estrutura lógica é necessário saber quais os tipos de dados (data types) usaremos nas colunas das tabelas, ou seja, quais os tipos de dados serão suportados nestas colunas.

Estes tipos de dados são descritos com detalhes no pdf  SQL Reference Volume I:

http://goo.gl/DHl81

Labs:

Lab1: Conectando ao um banco de dados e listando as tabelas relacionadas ao schema  atual

Listando as tabelas relacionadas ao outro schema:

Lab 2: Criando um sinônimo publico de uma view do catálogo do DB2

Agora esta view ou tabela, SYSCAT.TABLES, poderá ser vista através do sinônimo TABELAS em qualquer owner sem a necessidade de pré-fixar o schema.

Lab3: Criando uma tabela simples no DB2, listando a tabela e verificando a sua estrutura

Continuaremos no próximo post…