Salve caro leitor!

Hoje iremos falar de um conceito a muito discutido por arquitetos de software e estudiosos da área de banco de dados: as bases de dados orientadas a objetos.

O paradigma que impera nos SGBDs (Sistemas Gerenciadores de Banco de Dados) atualmente ainda é o relacional. Nele, temos entidades de dados, comumente chamadas de tabelas, e relações formais estabelecidas entre estas entidades, na forma de ligações lógicas entre os dados.

Cada entidade possui um conjunto de atributos (colunas) , onde cada tupla (cada linha de informação contida na entidade) deve ser identificada de forma única por um ou mais atributos. Esse conjunto de atributos que identificam a tupla recebem o nome de chave primária.

Chave estrangeira, por sua vez, é o nome dado ao conjunto de valores que representam a chave primária de uma dada tabela X que estão presentes na tabela Y. Dizemos então que há uma relação entre Y e X, onde Y é a entidade referente e X a entidade referenciada.

Já um ODBMS (Object Database Manager System) é um sistema de banco de dados no qual os registros são armazenados na forma de objetos, diferentemente das tuplas do paradigma relacional. Assim, as entidades são substituídas por definições de classes, as tuplas por objetos persistidos e os relacionamentos lógicos tornam-se relações de associação, agregação, herança, composição e dependência.

Dentre os fatores que fundamentam o uso de ODBMS podemos citar a facilidade em construir soluções complexas e o alinhamento às linguagens de programação orientadas a objetos.

O fator complexidade advém da necessidade crescente por desenvolver softwares que resolvam problemas de natureza complexa. O domínio do problema mapeado pela aplicação exige que os dados manipulados contenham intrinsecamente regras de negócio e mantenham relações entre si. Tome por base um relacionamento de herança em vários níveis, por exemplo.

Além da complexidade das aplicações, é necessário levar em conta a linguagem de programação na hora de optar pelo uso de um ODBMS. É fato que as linguagens orientadas a objetos dominam os ambientes de desenvolvimento e nada mais natural seria que a base de dados conversasse na mesma língua da aplicação. Para quem adota processos de desenvolvimento ágeis isso pode ser um aspecto extremamente relevante no ciclo de vida do produto.

Dentre os inúmeros sistemas de banco de dados disponíveis atualmente, temos ainda um terceiro tipo, o objeto-relacional, que se utiliza dos conceitos do paradigma relacional e mescla-os com orientação a objetos. Neste, coexistem tuplas e objetos, classes e entidades e o melhor dos dois formatos pode ser utilizado livremente. A construção objeto-relacional é muito mais versátil pois permite criar base de dados mistas e, em termos arquiteturais, não limitam o desenvolvimento a apenas uma linha conceitual.

Um exemplo de SGBD que suporta o paradigma objeto-relacional é o Oracle. Com ele é possível criar estruturas de complexidade acentuada, que vão desde a criação de classes e tabelas de objetos até manipulação de coleções de dados. O tipo de dado Object fornece praticamente todos os recursos de OO, como herança, sobrecarga, sobrescrita e outros mais como veremos na sequência neste artigo.



Preparação do ambiente



Vamos configurar o ambiente necessário para compilar nossos exemplos. Iniciaremos instalando o servidor Oracle 10g, disponível para download no endereço http://www.oracle.com/technetwork/database/express-edition/downloads/index.html.

Uma vez instalado o servidor Oracle, abra a página de administração no navegador, informando o endereço http://127.0.0.1:8080/apex. Se tudo estiver funcionando de acordo, será requisitado usuário e senha para acesso. O usuário a ser usado é SYSTEM e a senha deve ser a mesma que você informou no momento da instalação do servidor.

O usuário SYSTEM é uma espécie de superusuário, que possui todos os privilégios (grants) sobre os objetos do servidor. Nosso objetivo é criar um novo usuário, no qual posteriormente criaremos todas as nossas estruturas de exemplo. A criação de usuários é relativamente fácil e compreende acessar os menus Administração>Gerenciar Usuários do Banco de Dados>Criar Usuário do Banco de Dados.

Para a criação do novo usuário é necessário informar nome, senha e os privilégios atribuídos a ele. Coloque como nome EXEMPLO, senha EXEMPLO e na parte inferior, marque todos os privilégios disponíveis. Salve as informações.



Figura 1: Criação do usuário EXEMPLO

O segundo passo será instalar a ferramenta SQL Developer, disponível para download no endereço http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index-098778.html. Efetue o download da versão que possui o JDK integrado e após extraia o conteúdo do arquivo e execute o programa sqldeveloper.exe que fica na raíz da instalação.

Após inicializado o SQL Developer, na aba Conexões (a esquerda da tela), clique no símbolo de +. Nesse momento, abrirá uma tela para cadastro da nova conexão. Informe todos os dados requisitados e clique no botão Testar. Se a conexão foi estabelecida com sucesso, basta clicar em salvar.

Figura 2: Criação do usuário EXEMPLO



Uma vez criada a conexão, basta estendê-la, clicando no símbolo de +. Isso fará o SQL Developer construir a árvore de navegação, que permite acesso rápido a todas as estruturas do banco de dados. Adicionalmente será disponibilizada uma nova planilha para digitar os códigos SQL e executá-los no servidor. A planilha será criada com o próprio nome da conexão, como pode ser observado na figura abaixo:

...
Quer ler esse conteúdo completo? Tenha acesso completo