Ir para conteúdo

POWERED BY:

Arquivado

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

Web 1

Erro consulta MYSQL

Recommended Posts

Ola pessoal

tenho uma base de dados onde faço uma busca de categorias separadas por ",".

 

O sitema, funciona certinho, porem, tem em um servidor que esta dando este erro abaixo.

 

"[MySQL][ODBC 3.51 Driver][mysqld-5.1.56-community]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1

 

/pagina.asp, line 192"

 

faço assim

 


cores= RS("ProdCorId")

sqlcor = "SELECT * FROM corproduto where CorProdId in ("&cores&")" ' Aqui da o ERRO
Set RScores = Conn.Execute(sqlcor)

 

O que pode ser?

Compartilhar este post


Link para o post
Compartilhar em outros sites

dá um response.write na sua string SQL para ver o que esta sendo passado.

e tente fazer assim:

 

sqlcor = "SELECT * FROM corproduto where CorProdId in "&cores&""

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloquei um response.write(RS("ProdCorId")) apresentou o registro que é 2 e deu este erro abaixo.

 

Coloquei

sqlcor = "SELECT * FROM corproduto where CorProdId in "&cores&""

 

 

[MySQL][ODBC 3.51 Driver][mysqld-5.1.56-community]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '2' at line 1

 

/pagina.asp, line 194

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola pessoal

tenho uma base de dados onde faço uma busca de categorias separadas por ",".

 

O sitema, funciona certinho, porem, tem em um servidor que esta dando este erro abaixo.

 

"[MySQL][ODBC 3.51 Driver][mysqld-5.1.56-community]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1

 

/pagina.asp, line 192"

 

faço assim

 


cores= RS("ProdCorId")

sqlcor = "SELECT * FROM corproduto where CorProdId in ("&cores&")" ' Aqui da o ERRO
Set RScores = Conn.Execute(sqlcor)

 

O que pode ser?

 

Já que o valor retorna 2 tente fazer assim

 



sqlcor = "SELECT * FROM corproduto where CorProdId in (2)"    ' Aqui da o ERRO
Set RScores = Conn.Execute(sqlcor)

e verifique se assim não dá o erro

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Informe o tipo desde campo CorProdId

Compartilhar este post


Link para o post
Compartilhar em outros sites

como ele esta entre aspas duplas "", sub-julga-se ser do tipo numérico

Compartilhar este post


Link para o post
Compartilhar em outros sites

Por você está usando VARCHAR, está tendo problemas.

 

Altere para numérico ou então separe os valores dentro do IN utilizando 'aspas simples'.

 

Poste o resultado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

se for texto coloque assim

antes atribua o valor a uma variavel

varcor=cores

'"&varcor&"'

a sintaxe para o SQL IN é

 

SELECT column_name(s)

FROM table_name

WHERE column_name IN (value1,value2,...)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Continua com o mesmo erro.

 

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

 

[MySQL][ODBC 3.51 Driver][mysqld-5.1.56-community]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''1'' at line 1

 

/pagina.asp, line 196

 

Alguém sabe o que pode estar ocorrendo?

 

Pessoal, já tentei de tudo realmente não sei o que possa estar ocorrendo.

Se alguém tiver mais alguma saída, conta a força de vocês.

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse erro indica para você verificar a ortografia. pode ser um nome de coluna Invalido 'sua_coluna'. A coluna a qual você se refere na Base de Dados não foi encontrada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta assim

 

cores= RS("ProdCorId")

sqlcor = "SELECT * FROM corproduto where CorProdId in ('"&cores&"')"
Set RScores = Conn.Execute(sqlcor)

 

 

faltavam as plicas...

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.