Oi pessoal não estou conseguindo executar uma procedure no sistema que estou desenvolvendo em Java.
Segue um trecho do código abaixo:
public Collection<ClienteVO> findAllCliente() throws DAOException {
Collection<ClienteVO> results = new ArrayList<ClienteVO>();
ClienteVO clienteVO = new ClienteVO();
CallableStatement stmt = null;
ResultSet rs = null;
try {
stmt = getConnection().prepareCall("{call SP_CLIENTE(?,?,?)}");
stmt.setString(1, "SC");
stmt.setInt(2, clienteVO.getCodCliente());
stmt.setString(3, clienteVO.getDscCliente());
rs = stmt.executeQuery();
while(rs.next()){
clienteVO.setCodCliente(rs.getInt("cod_cliente"));
clienteVO.setDscCliente(rs.getString("dsc_cliente"));
results.add(clienteVO);
}
} catch(SQLException e) {
s_log.error(e.getMessage());
throw new DAOException(e.getCause());
} finally {
DAOFactory.releaseResources(stmt, rs);
}
return results;
}
Esse agora é o trecho da procedure:
-- Passo responsável por listar (select) dados na tabela CLIENTE
ELSE IF @PASSO='SC'
BEGIN
SELECT COD_CLIENTE,
DSC_CLIENTE
FROM TB_CLIENTE
END
Não consigo executar, consequentemente não lista os dados na página.
Alguem pode me dizer onde estou errando pois é a primeira vez que desenvolvo utilizando procedures. Testei utilizando uma String SQL e funcionou, mas com a procedure não.
Obrigado desde já pela atenção e ajuda.