Erro na consulta

boa noite tenho uma aplicacao que esta inserindo no banco de dados ate ai td bem
porem quando eu vo pesquisar no banco o codigo 10 ou um codigo maior que tenho cadastrado la me da esse erro no console

java.sql.SQLException: Column Index out of range, 10 > 8. 
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:910)
	at com.mysql.jdbc.ResultSet.checkColumnBounds(ResultSet.java:690)
	at com.mysql.jdbc.ResultSet.getInt(ResultSet.java:2621)
	at materialDAO.MatDao.consultar_materialtiagoalves(MatDao.java:71)
	at materialBO.MatBo.consultar_materialtiagoalves(MatBo.java:20)
	at materialFACADE.MatFacade.consultar_materialtiagoalves(MatFacade.java:19)
	at materialCONTROLE.MatControle.main(MatControle.java:28)

oque significa isso??

tem como vc colocar ai o script da tabela e a consulta que vc ta realizando
esse erro ta vinculado a acesso a posição superior ao tamanho do campo.

Provavelmente pelo erro, vc esta fazendo algo errado em seu script. Porem vc terá que postar pra podermos ajudar melhor

o meu script da tabela e esse

DROP TABLE IF EXISTS `ltp`.`materialtiagoalves`;
CREATE TABLE  `ltp`.`materialtiagoalves` (
  `cdmat` int(10) NOT NULL,
  `nome` varchar(100) DEFAULT NULL,
  `valor` int(10) DEFAULT NULL,
  `tamanho` int(10) DEFAULT NULL,
  `cor` varchar(100) DEFAULT NULL,
  `vlmercado` int(100) DEFAULT NULL,
  `vllimite` int(100) DEFAULT NULL,
  `vlbase` int(100) DEFAULT NULL,
  PRIMARY KEY (`cdmat`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

o codigo tesponsavel por faser a consulta e esse
DAO

	public MatModelo consultar_materialtiagoalves(int cdMat){
		Connection 			conexao = null;
		ResultSet			rs 		= null;
		Statement 			stmt	= null;
		
		MatModelo modelo= new MatModelo();
		
		try {
			conexao = obterConexao();
			stmt = conexao.createStatement();
			rs = stmt.executeQuery("select * from ltp.materialtiagoalves where cdMat  = "+cdMat);
			while (rs.next()){
				modelo.setCdMat(rs.getInt(cdMat));
				modelo.setCor(rs.getString("cor"));
				modelo.setNome(rs.getString("nome"));
				modelo.setTamanho(rs.getInt("tamanho"));
				modelo.setValor(rs.getInt("valor"));
				modelo.setVlbase(rs.getInt("vlbase"));
				modelo.setVllimite(rs.getInt("vllimite"));
				modelo.setVlMercado(rs.getInt("vlmercado"));
				
				
			}
		} catch (Exception e) {
			e.printStackTrace();
		}finally{
			
			try {
				rs.close();
				stmt.close();
				conexao.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		
		return modelo;
	}

assinatura do metodo FACADE

public MatModelo consultar_materialtiagoalves(int cdMat){
		
		return mbo.consultar_materialtiagoalves(cdMat);//retorna um objeto 
	}

aki e executado a consulta para imprimir no console
CONTROLE

	mmodelo = new MatModelo();
	
	mmodelo=mfacade.consultar_materialtiagoalves(10);
	
	System.out.println(mmodelo.getCdMat());
	System.out.println(mmodelo.getCor());
	System.out.println(mmodelo.getNome());
	System.out.println(mmodelo.getTamanho());
	System.out.println(mmodelo.getValor());
	System.out.println(mmodelo.getVlbase());
	System.out.println(mmodelo.getVllimite());
	System.out.println(mmodelo.getVlMercado());
	}
}

so pra completar a assinatura do metodo de consulta do BO



public MatModelo consultar_materialtiagoalves(int cdMat){
	
	return mdao.consultar_materialtiagoalves(cdMat);//retorna um objeto 
}

aqui,não deveria ter aspas?:

  modelo.setCdMat(rs.getInt("cdMat")); 

isso msmo yhhik
com ele ta passando o inteiro q é 10, a consulta ta tentando retornar o 10º campo da tabela q n existe.
por isso estoura o erro Fora do alcance do índice

mmodelo=mfacade.consultar_materialtiagoalves(10); // tenta mudar para isso mmodelo=mfacade.consultar_materialtiagoalves(8);

danilovicente não pode ser assim pois o metodo

consultar_materialtiagoalves(cdMat)

recebe como parâmetro o código do material a ser buscado
e não o campo da tabela a ser buscado.

para resolver o problema dele

rs.getInt()

ou ele passa a string com o nome do campo ou ele passa o índice do campo da tabela
que se refere ao campo desejado.

[quote=jeffepalmares]danilovicente não pode ser assim pois o metodo

consultar_materialtiagoalves(cdMat)

recebe como parâmetro o código do material a ser buscado
e não o campo da tabela a ser buscado.

para resolver o problema dele

rs.getInt()

ou ele passa a string com o nome do campo ou ele passa o índice do campo da tabela
que se refere ao campo desejado.[/quote]

Mas como ele vai pergar o rs.getInt, se ele ainda não fez a consulta ao banco e sim está passando o valor do código a pegar, eu passei o 8 como um exemplo apenas para testar.

Se fizer o que o yhhik disse acredito que já ira funcionar. Pois do modo que está ele busca a coluna 10, que no caso não existe.

modelo.setCdMat(rs.getInt(cdMat));  

o metodo getInt() irá retornar um inteiro baseado no parametro passado que pode ser uma:
String - o nome da coluna
int - o indice da coluna

vc esta passando neste caso uma varialvel do tipo int com o valor 10. O erro ocorre pois sua tabela não possui 10 colunas.
Acho que neste momento sua intenção era busca o nome da coluna sendo assim:

modelo.setCdMat(rs.getInt("cdmat"));  

deve resolver