Ir para conteúdo

Arquivado

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

Kalmfs

Usar True/False no WHERE do SELECT

Recommended Posts

Boa tarde galera.

 

Tenho um campo TRUE/FALSE no BD Access e preciso fazer um SELECT somente dos campos marcados como FALSE. Parecia simples quando tive a ideia mas não consegui de jeito nenhum. :ermm:

 

O SELECT tá assim:

Set RS = Server.CreateObject("ADODB.Recordset")SQL2 = "select setor, docmat, aprovacao, requisitante, urgencia, emission, modalidade from solicitacoes where setor = 'ADM'  and aprovacao = False ORDER BY "& order &" "& ad &" "RS.Open SQL2, Conn, 3

Desse jeito mostra todos os registros, sendo eles FALSE ou TRUE.

 

Já testei também:

" & False & "  --> Nenhum valor foi fornecido para um ou mais parâmetros necessários.'" & False & "'  --> Tipo de dados imcompatível na expressão de critério.'%" & False & "%'  --> Tipo de dados imcompatível na expressão de critério.

Alguma dica?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Rafael,

 

O tipo de dados no Access é Sim/Não com formato Verdadeiro e Falso.

Se coloco aprovacao = 'false'  --> Tipo de dados imcompatível na expressão de critério.

Em outra página do sistema uso esse campo da seguinte forma, sem problemas:

If rs("aprovacao") = True Then
Response.Write("SI")
Else
Response.Write("NO")
End If

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

 

SQL2 = "select setor, docmat, aprovacao, requisitante, urgencia, emission, modalidade from solicitacoes where setor = 'ADM'  and aprovacao = False ORDER BY "& order &" "& ad &" "
response.write(SQL)
response.end()

Compartilhar este post


Link para o post
Compartilhar em outros sites

Usei:

 

SQL2 = "select setor, docmat, aprovacao, requisitante, urgencia, emission, modalidade from solicitacoes where setor = 'ADM' and aprovacao = False ORDER BY "& order &" "& ad &" "
response.write(SQL2)
response.end()

e retornou:

 

select setor, docmat, aprovacao, requisitante, urgencia, emission, modalidade from solicitacoes where setor = 'ADM' and aprovacao = False ORDER BY emission DESC

Quando coloquei:

 

SQL2 = "select setor, docmat, aprovacao, requisitante, urgencia, emission, modalidade from solicitacoes where setor = 'ADM' and aprovacao = " & False & " ORDER BY "& order &" "& ad &" "
response.write(SQL2)
response.end()

retornou:

 

select setor, docmat, aprovacao, requisitante, urgencia, emission, modalidade from solicitacoes where setor = 'ADM' and aprovacao = Falso ORDER BY emission DESC

A única diferença é que da segunda maneira retorna: Falso

Compartilhar este post


Link para o post
Compartilhar em outros sites

nessa string SQL ele retorno os dados onde o setor = 'ADM' e aprovacao = Falso, esta retornando corretamente ?!?!?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não está retornando corretamente.

 

Devido à falta de tempo (preciso finalizar isso hj), vou ter que modificar e fazer o SELECT de todos os dados, TRUE e FALSE, e mais à frente exibir somente FALSE.

 

Valeu pela ajuda. Caso descubra alguma novidade, posto aqui.

 

Só pra explicar melhor:

 

Vou dar SELECT em tudo e na hora de exibir os registros vou usar:

 

<% If rs("aprovacao") = False Then %>
<a href="link" target="_blank" title="EDITAR"><img src="editar.png" /></a>
<% End If %>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente também usando 0 (False) e 1 (True).

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.