Java e SQL

ok, obrigado pela explicação. Não quero alimentar o sql só buscar esses valores.
Mas contudo obrigado pela paciência e tempo. Vou continuar estudando.

Se você não quer alimentar o sql, então não precisa de where etc… não é?

O modo que te passei é o utilizado para consultar registros na base com filtro…

sim. obrigado.
Vo voltar a estudar é melhor valeu a tentativa de ensinar

Começa por essa apostila, vai te dar uma boa base…

Depois nessa outra vai ter uma boa base de conexão com banco de dados…

Bons estudos!

2 curtidas

Obrigado, muito obrigado

1 curtida

E não se acanhe em pedir ajuda aqui no fórum se não conseguir prosseguir sozinho

É sua obrigação correr atrás, é nossa opção te ajudar e é sua obrigação ajudar os outros depois que você aprender :joy:

Com certeza. Pode deixar. Assim que aprender concerto erro e volto aqui pra postar a correção

com a ajuda de um professor da casa da caelum Brasilia, Prof.Alexandre que me explicou como deve ser feito:
Aqui vai meu agradecimento ao professor mais uma vez por sua paciência.
Continuarei estudando obrigado Professor Alexandre Aquiles.

Em 2 de maio de 2017 12:18, Alexandre Aquiles alexandre.aquiles@caelum.com.br escreveu:
Vi que você retirou o LIKE do seu SQL mas, pelo que entendi, você realmente precisa.

Só tinha faltado o WHERE.

String sql = “select * from Titular WHERE Codigo=? or Nrotit=? or Nomass Like ?”;

Aí, você precisa setar valores para essas interrogações usando o seu parâmetro buscar.

Além disso, no array que você monta no ResultSet para usar no modelo.addRow, você tem que começar os índices com 0 (zero).

Ficaria mais ou menos assim:

public DefaultTableModel buscarTitular(String buscar) {
	try {
		String registros[] = { "Código", "Título", "Nome"};

		DefaultTableModel modelo = new DefaultTableModel(null, registros);
				
		String sql = "select * from Titular WHERE Codigo=? or Nrotit=? or Nomass Like ?";
		
		int buscaInt = -1;
		try {
			buscaInt = Integer.parseInt(buscar);
		} catch (NumberFormatException ex) {
		}

		PreparedStatement pst = cn.prepareStatement(sql);
		pst.setInt(1, buscaInt);				
		pst.setInt(2, buscaInt);				
		pst.setString(3, "%"+buscar+"%");

		String dados[] = new String[3];	

		ResultSet rst = pst.executeQuery();
		while (rst.next()) {
			dados[0] = rst.getString("Codigo");
			dados[1] = rst.getString("Nrotit");
			dados[2] = rst.getString("Nomass");
			modelo.addRow(dados);
		}

		return modelo;
	} catch (Exception ex) {
		JOptionPane.showMessageDialog(null, ex);
		return null;
	}
}
1 curtida