Jdbc

8 respostas
E
Boa tarde! Estou com muita dúvida como consultar no banco SQL, estou com duas tabelas no banco de dados uma de aluno que tem matricula e nome e outra tabela de nota de aluno que tem matricula e as notas, estou tentando recuperar as matrículas e notas no programa principal e não consigo, a conexão com o banco está sendo feita, quem puder ajudar agradeço. Segue o código.
public Aluno ConsultarNotaBD(String matricula)throws Exception{
			
	  Connection conn = this.getConnection();
                  PreparedStatement Stmt;
                  ResultSet rs; 
	  Stmt = conn.prepareStatement
                  ( " SELECT  "	      
                    " ALUNO.MAT,NOTAALUNO.NOTA FROM ALUNO,NOTAALUNO"+
						  "WHERE ALUNO.MAT=NOTAALUNO.MAT" ); 

	  rs = Stmt.executeQuery();
	  rs.next();
	  Aluno a = new Aluno();
				 
	  while (rs.next()) {
                           a.addNota(rs.getDouble("notaaluno.nota"))
                           
                       } 	
			  		 
	  Stmt.close();
	  rs.close();
                  conn.commit();
	
                 return a;
 }

8 Respostas

T

Hum - matéria = nota? Esquisito. Maçã = laranja?

E

A consulta tem que buscar todas as notas de um mesmo aluno.

T

Uma coisa - você não tem um parâmetro “matrícula”? Você tem de usá-lo em algum lugar.

Stmt = conn.prepareStatement
                   ( " SELECT  "	      
                     " ALUNO.MAT,NOTAALUNO.NOTA FROM ALUNO inner join NOTAALUNO on ALUNO.MAT = NOTAALUNO.MAT "+
 						  "WHERE ALUNO.MAT=?" ); 
          stmt.setString (1, matricula);
...

Outra coisa - o que é que esse “rs.next()” está fazendo “solto” no seu código? Use apenas aquele que está dentro do “while”.

E

A consulta só vai pegar as notas da matricula passada com parâmetro ?

T

É isso que eu lhe pergunto.

E

É isso que eu estou querendo.

T

Se for isso, então remova alguns erros de compilação no código acima, e teste para ver se está tudo certo. (Acho que falta um “+” em algum lugar.)

E

Muito obrigada!!

Criado 2 de junho de 2007
Ultima resposta 2 de jun. de 2007
Respostas 8
Participantes 2