UFSM > Ciência da Computação > ELC119 - Fundamentos de Bancos de Dados

Objetivo

O objetivo deste exercício é exercitar o processo de projeto de um banco de dados, usando uma ferramenta de modelagem (Power*Architect) com recurso para conexão com diferentes SGBDs.

Preparação

Conecte-se ao servidor linux03, que já possui as seguintes ferramentas instaladas:

Exercícios

  1. Crie um diretório de trabalho e vá até ele:
    mkdir workdir
    cd workdir
    

  2. Execute o HSQLDB e deixe-o rodando em background:
    java -cp /opt/hsqldb/lib/hsqldb.jar org.hsqldb.Server \
         -database.0 file:mydb -dbname.0 dblogin -port 9050&
    
    ATENÇÃO: Substitua o nome "dblogin" pelo seu nome de usuário NCC. Se a porta 9050 já estiver em uso (Address already in use), troque o número (9051, 9052, ...).

  3. Execute a ferramenta de modelagem:
    java -jar /opt/architect-0.9.11/architect.jar&
    

  4. Conecte a ferramenta ao SGBD:
    • Connections -> Add Source Connection -> New Connection
    • Connection Name: HSQLDB
    • Database Type: HSQLDB
    • Connect Options:
      • Type: hsql
      • Filename: //localhost:9050/dblogin
    • Username: sa

      ATENÇÃO: Ajuste o Filename ("dblogin" e número de porta) de acordo com o comando usado para executar o HSQLDB.

  5. Crie duas entidades (ícone "New Table"):
    • Departamento:
      • Id: integer, chave primária
      • Nome: varchar
    • Funcionario:
      • Id: inteiro, chave primária
      • Depto: inteiro
      • Nome: varchar

  6. Crie um relacionamento não-identificador entre essas entidades (ícone "New Non-Identifying Relationship). Clique primeiro em Departamento e depois em Funcionario.

  7. Gere o esquema lógico do banco de dados:
    • Tools -> Forward Engineering
    • Create in: HSQLDB
    • Generate DDl for Database Type: HSQLDB
    • Schema: public
    • OK
    • Execute

  8. Execute a interface de gerenciamento do HSQLDB:
    java -cp /opt/hsqldb/lib/hsqldb.jar org.hsqldb.util.DatabaseManagerSwing&
    

  9. Crie uma conexão com o banco de dados:
    • Type: HSQL Database Engine Server
    • Driver: org.hsqldb.jdbcDriver
    • URL: jdbc:hsqldb:hsql://localhost:9050/dblogin
    • User: sa

  10. Observe as tabelas criadas: PUBLIC.FUNCIONARIO e PUBLIC.DEPARTAMENTO

  11. Insira dados no banco:
    • Command -> INSERT -> complete o comando conforme abaixo -> Execute SQL

      INSERT INTO departamento VALUES (1,'Vendas');
      INSERT INTO departamento VALUES (2,'Compras');
      INSERT INTO departamento VALUES (3,'RH');
      

  12. Visualize os dados da tabela Departamento:
    • Command -> SELECT -> complete o comando conforme abaixo -> Execute SQL

      SELECT * FROM departamento
      

  13. Teste os recursos do SGBD para manter a integridade dos dados, inserindo um registro com chave repetida (isso vai gerar um erro):
    INSERT INTO departamento VALUES (1,'Financas');
    

Material

Página criada em: Qua Set 24 07:55:45 BRT 2008. Última atualização em: Mon Sep 29 10:54:30 2008. Autoria: Andrea Schwertner Charão.