• Nenhum resultado encontrado

6.8 ResultSet

6.8.2 Fechando Recursos

Depois de usadas, as conexões Connections,Statemets e ResultSets devem ser fechadas. O método close() existente nestas classes deve ser chamado sempre que um destes recursos não forem mais necessários dentro da execução de uma aplicação Java com acesso a banco de dados. O programador deve ter o cuidado de realizar a chamada deste método para não quebrar a conexão ou canal de execução de uma instrução SQL no meio de uma transação.

con.close(); // con é um objeto de Connection st.close(); // st é um objeto de Statement

rs.close(); // rs é um ojbeto de ResultSet

Exercícios de Fixação 6 – Java JDBC

Qual a classe Java que possibilita a manipulação de dados resultantes de uma consulta SQL? Quais são os métodos de navegação de ponteiro disponibilizados por esta classe?

Atividade 1 – Java JDBC

1. Todas as consultas a seguir se referem ao banco de dados “empresa” empresa.sql. Escreva o comando DML para cada uma delas e mostre o resultado por meio de uma classe executável Java.

a. Mostre o primeiro nome e endereço de todos os empregados que trabalham para o departamento ‘Pesquisa’.

b. Encontre os nomes (primeiro nome) de todos os empregados que são diretamente supervisionados por “Joaquim”.

c. Faça uma lista dos números e nomes de projetos que envolvam um empregado cujo último nome seja ‘Will’, mesmo que esse trabalhador seja o gerente do departamento que controla o projeto.

d. Para todo projeto localizado em ‘Araucaria’, liste o nome do projeto, o nome do departamento de controle e o último nome, endereço e data de nascimento do gerente do departamento.

e. Encontre o nome dos empregados que trabalham em todos os projetos controlados pelo departamento número 5.

f. Para cada projeto, liste o nome do projeto e o total de horas por semana (de todos os empregados) gastas no projeto.

g. Recupere os nomes de todos os empregados que trabalhem mais de 10 horas por semana no projeto ‘Automatizacao’.

h. Recupere os nomes de todos os empregados que não trabalham em nenhum projeto.

i. Recupere a média salarial de todos os empregados do sexo feminino.

j. Para cada departamento, recupere o nome do departamento e a média salarial de todos os empregados que trabalham nesse departamento.

Atividade 2 – Java JDBC

1. Encontre o nome e o endereço de todos os empregados que trabalhem em pelo menos um projeto localizado em ‘Curitiba’, mas cujo departamento não se localiza em ‘Curitiba’.

2. Liste os nomes de todos os empregados com dois ou mais dependentes. 3. Recupere o nome de empregados que não tenham dependentes.

4. Liste o último nome de todos os gerentes de departamento que não tenham dependentes.

5. Liste os nomes dos gerentes que tenham, pelo menos, um dependente.

7. Manipulando Resultados de Consultas

Nesta sessão iremos utilizar alguns recursos avançados de Java JDBC para organizar a aplicação em camadas para possibilitar a manipulação de banco de dados.

6.8.2 Fechando Recursos

Depois de usadas, as conexões Connections,Statemets e ResultSets devem ser fechadas. O método close() existente nestas classes deve ser chamado sempre que um destes recursos não forem mais necessários dentro da execução de uma aplicação Java com acesso a banco de dados. O programador deve ter o cuidado de realizar a chamada deste método para não quebrar a conexão ou canal de execução de uma instrução SQL no meio de uma transação.

con.close(); // con é um objeto de Connection st.close(); // st é um objeto de Statement

rs.close(); // rs é um ojbeto de ResultSet

Exercícios de Fixação 6 – Java JDBC

Qual a classe Java que possibilita a manipulação de dados resultantes de uma consulta SQL? Quais são os métodos de navegação de ponteiro disponibilizados por esta classe?

Atividade 1 – Java JDBC

1. Todas as consultas a seguir se referem ao banco de dados “empresa” empresa.sql. Escreva o comando DML para cada uma delas e mostre o resultado por meio de uma classe executável Java.

a. Mostre o primeiro nome e endereço de todos os empregados que trabalham para o departamento ‘Pesquisa’.

b. Encontre os nomes (primeiro nome) de todos os empregados que são diretamente supervisionados por “Joaquim”.

c. Faça uma lista dos números e nomes de projetos que envolvam um empregado cujo último nome seja ‘Will’, mesmo que esse trabalhador seja o gerente do departamento que controla o projeto.

d. Para todo projeto localizado em ‘Araucaria’, liste o nome do projeto, o nome do departamento de controle e o último nome, endereço e data de nascimento do gerente do departamento.

e. Encontre o nome dos empregados que trabalham em todos os projetos controlados pelo departamento número 5.

f. Para cada projeto, liste o nome do projeto e o total de horas por semana (de todos os empregados) gastas no projeto.

g. Recupere os nomes de todos os empregados que trabalhem mais de 10 horas por semana no projeto ‘Automatizacao’.

h. Recupere os nomes de todos os empregados que não trabalham em nenhum projeto.

i. Recupere a média salarial de todos os empregados do sexo feminino.

j. Para cada departamento, recupere o nome do departamento e a média salarial de todos os empregados que trabalham nesse departamento.

Atividade 2 – Java JDBC

1. Encontre o nome e o endereço de todos os empregados que trabalhem em pelo menos um projeto localizado em ‘Curitiba’, mas cujo departamento não se localiza em ‘Curitiba’.

2. Liste os nomes de todos os empregados com dois ou mais dependentes. 3. Recupere o nome de empregados que não tenham dependentes.

4. Liste o último nome de todos os gerentes de departamento que não tenham dependentes.

5. Liste os nomes dos gerentes que tenham, pelo menos, um dependente.

7. Manipulando Resultados de Consultas

Nesta sessão iremos utilizar alguns recursos avançados de Java JDBC para organizar a aplicação em camadas para possibilitar a manipulação de banco de dados.

No documento Java Interfaces Gráficas e Banco de Dados (páginas 72-74)

Documentos relacionados