Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

lili_mf

Passar String para Consulta SQL

Recommended Posts

Olá pessoal!

 

Estou tentando pegar uma informação vinda de um formulário, onde o campo desse form está conectado com uma tabela do banco de dados, e exibindo automaticamente o conteúdo dessa tabela.

E para pegar essa informação vinda do form, estou fazendo assim:

 

c = request.getParameterValues ("name_library");

StringBuffer strb = new StringBuffer();

for(int i=0; i<c.length;i++){

strb.append(c);

}

String str = strb.toString();

 

 

Qdo mando imprimir a string str: out.println(str); Imprime ok na tela!

 

Mas qdo tento executar uma consulta:

 

PreparedStatement stm = conee.prepareStatement ("SELECT * FROM library WHERE name_library = ?");

stm.setString(1,str);

Não é retornado nada! Como se ñ estivesse passando a string str!

Alguém poderia me dar uma dica do que estou fazendo errado, ou se existe alguma outra maneira de resolver isso?

 

Agradeço desde já!!!!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa!!Mostra pra gente o resultado dessa string str.E você já tentou passar esse paramentro "name_librar" direto. Ex:SELECT * FROM library WHERE name_library = valores" só pra testar?Outra coisa: Que método voce esta usando pra executar essa query??Ate mais!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não é retornado nada! Como se ñ estivesse passando a string str!Alguém poderia me dar uma dica do que estou fazendo errado, ou se existe alguma outra maneira de resolver isso?

Voce disse que o conteúdo da variável str está ok, então teste esse mesmo comando direto no banco.Veja se traz resultados.Tente executar a query assim:
PreparedStatement stm = conee.prepareStatement ("SELECT * FROM library WHERE name_library = ?");//stm.setString(1,str);ResultSet rs =stm.executeQuery();
além disso voce precisa mostrar o que foi guardado em rs. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal!

 

Estou tentando pegar uma informação vinda de um formulário, onde o campo desse form está conectado com uma tabela do banco de dados, e exibindo automaticamente o conteúdo dessa tabela.

E para pegar essa informação vinda do form, estou fazendo assim:

 

c = request.getParameterValues ("name_library");

StringBuffer strb = new StringBuffer();

for(int i=0; i<c.length;i++){

strb.append(c);

}

String str = strb.toString();

 

 

Qdo mando imprimir a string str: out.println(str); Imprime ok na tela!

 

Mas qdo tento executar uma consulta:

 

PreparedStatement stm = conee.prepareStatement ("SELECT * FROM library WHERE name_library = ?");

stm.setString(1,str);

Não é retornado nada! Como se ñ estivesse passando a string str!

Alguém poderia me dar uma dica do que estou fazendo errado, ou se existe alguma outra maneira de resolver isso?

 

Agradeço desde já!!!!!!!

vOCE ESTA FAZENDO ISSO: stm.executeQuery();

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá..ainda ñ deu certo !!

Qdo passo o paramêtro em uma busca direto no SQL, funciona ok, a busca é executada perfeitamente e retornando o resultado esperado.

Mas qdo tento pegar o valor escolhido pelo form, a busca não funciona.

E o mais engraçado é q qdo mando imprimir a "escolha" na tela imprime ok.

O rs está ok, pq passa para o if, e dá a mensagem q a busca não encontrou nada!

 

Estou achando que o problema é do form, pois o campo está conectado com uma tabela no banco, e parece q ñ está passando o valor do option value.

O trecho do meu form q conecta com o banco q é o q estou tentando pegar é:

 

[/code]<select name="name_library">
<%tbl.execQuery("select Distinct name_library from library order by name_library");
while (tbl.proximo()){
%>
<option value=" <%=tbl.getCampoStr("name_library")%> " selected> 
<%=tbl.getCampoStr("name_library")%></option>
<%
}
%>
</select>[code]
.

 

Alguém teria mais alguma idéia do que eu poderia estar fazendo!?

 

Obrigadaaa!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta usar (String) request.getParameter("NOME DO PARAMETRO")

 

Assim você ja pega o parâmetro diretamente, só é necessário fazer o Cast para o seu tipo correto de dados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.