Olá, pessoal!!
Eu tentando executar e apareceu os erros na java, mas mesmo query que testei no PostgreSQL e rodou, não estou entendo essa situação.
Mensagem de java
Código da query na java
public ArrayList<AlunoTurma> consultaConceito(String matricula, String nome, String codDisciplina, String nomeDisc) {
ArrayList<AlunoTurma> al = new ArrayList<AlunoTurma>();
String query = "select d.cod_disciplina,d.nome_disc, at.parcial_1, at.parcial_2, at.parcial_3,at.parcial_4,at.conceitos_final, t.cod_turma,a.cod_matricula"+
"from disciplina d "+
"inner join turma t "+
"on d.cod_disciplina = t.cod_disciplina "+
"inner join aluno_turma at "+
"on t.cod_turma = at.cod_turma "+
"inner join aluno a "+
"on a.cod_matricula = at.cod_matricula "+
"where 1=1 ";
StringBuffer sb = new StringBuffer(query);
if (!matricula.isEmpty()) {
sb.append(" and a.cod_matricula= " + matricula + " ");
}
if (!nome.isEmpty()) {
sb.append("and a.nome_aluno like '" + nome+"'");
}
if (!codDisciplina.isEmpty()) {
sb.append("and d.cod_disciplina= "+codDisciplina);
}
if (!nomeDisc.isEmpty()) {
sb.append("and d.nome_disc like '"+nomeDisc+"'");
}
iniciaBD();
Connection conn = getConnection();
try {
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sb.toString());
while (rs.next()) {
AlunoTurma at = new AlunoTurma();
Turma t = new Turma();
Disciplina d = new Disciplina();
d.setCodDisciplina(rs.getInt(1));
d.setNome(rs.getString(2));
t.setDisc(d);
at.setParcial1(rs.getString(3));
at.setParcial2(rs.getString(4));
at.setParcial3(rs.getString(5));
at.setParcial4(rs.getString(6));
at.setConceitoFinal(rs.getString(7));
t.setIdTurma(rs.getInt(8));
at.setT(t);
Aluno a = new Aluno();
a.setMatricula(rs.getInt(8));
at.setA(a);
al.add(at);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return al;
}
Espero que vocês me ajudem… obrigado!!