..:: MX Studio Fóruns ::..: ADODB.Field error '80020009' - ..:: MX Studio Fóruns ::..

Jump to content

Publicidade




ATENÇÃO

Para evitar posts desnecessários e que não influam para o andamento e desenvolvimento do fórum, clique aqui e leia todas as regras.
Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

ADODB.Field error '80020009' erro ADODB.Field error '80020009'

#1 User is offline   rada 

  • Group: Membros
  • Posts: 4
  • Joined: 06-January 06

  Posted 03 July 2006 - 01:01 AM

Tenho duas datas armazenadas no BD Access, tipo:
data_inicial --> quando começa um evento
data_final --> quando termina o evento

estou tentando comparar a data do sistema com as duas datas armazenadas no BD Access mas apresenta o seguinte erro:

ADODB.Field error '80020009'

Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current


meu código:

<!--#include file="inc/inc.conection.asp" -->
<%

data = Right(date(),10)

Set rsPrevisaoH = Server.CreateObject("ADODB.Recordset")
sql = "SELECT * FROM previsao WHERE data_inicio <= #" & data & "# AND data_fim >= #" & data & "#"
rsPrevisaoH.Open SQL, Conn, 1, 3

if NOT (rsPrevisaoH.BOF AND rsPrevisaoH.EOF) Then

Response.Write(rsPrevisaoH("titulo_previsao"))

end if

%>

sei que esse erro ta aparecendo por que naum encontra nenhum registro e eu to mandando imprimi mas o caso é o seguinte:

ele naum consegue comparar as datas que começam por "0"

tipo 01/07/2006 se não busca normal

ja tentei fazer a consulta com a variavel data assim: 2/7/2006 mas tbm naum busca

alguem da uma luz por favor .
Obrigado
0

#2 User is offline   machinna 

  • Group: Membros
  • Posts: 137
  • Joined: 25-April 06

Posted 03 July 2006 - 10:59 AM

Tente converter para Formato americano :

CODE

sql = "SELECT * FROM previsao WHERE data_inicio >= '" & month(data)&"/"&day(data)&"/"&year(data) & "' AND data_fim <= '" & month(data)&"/"&day(data)&"/"&year(data) & "'"

0

#3 User is offline   rada 

  • Group: Membros
  • Posts: 4
  • Joined: 06-January 06

  Posted 03 July 2006 - 03:42 PM

Bha velho não solucionou, mas obrigado pela dica

eu estou armazenando no bd a data em formato normal dia/mes/ano, não sei por que ele não consegue comparar. quando busco os dados numa consulta sem WHERE tipo:

Set rsPrevisaoH = Server.CreateObject("ADODB.Recordset")
sql = "SELECT * FROM previsao"
Response.Write(rsPrevisaoH("data_inicio")) --> retorna 01/07/2006
Response.Write(rsPrevisaoH("data_fim")) --> retorna 10/07/2006

o resultado é a data no formato padrao tipo:
data inicio: 01/07/2006
data fim: 10/07/2006

e eu to comparando com a data do servidor (da função date) tipo:
data = Right(date(),10) --> que retorna por exempl hoje --> 03/07/2006

no cas oa consulta ficara assim:

"SELECT * FROM previsao WHERE data_inicio <= #" & data & "# AND data_fim >= #" & data & "#"

01/07/2006 <= 03/07/2006 <= 10/7/2006 tipo, é como se isso não fosse verdadeiro.

e não funciona.

HELP!!!!!!!!!!!!!!




0

#4 User is offline   machinna 

  • Group: Membros
  • Posts: 137
  • Joined: 25-April 06

Posted 03 July 2006 - 06:11 PM

Aumente esse seu período que funciona. Você está informando um período que não retorna registros. Adicione uma DataInicial e uma Final fazendo dessa maneira que dará certo :

CODE

Datainicial = Date()-15
Datafinal=Date()

Set rsPrevisaoH = Server.CreateObject("ADODB.Recordset").

sql = "SELECT * FROM previsao Where data_inicio >='" & month(Datainicial)&"/"&day(Datainicial)&"/"&year(Datainicial) & "' and data_fim <='" & month(Datafinal)&"/"&day(Datafinal)&"/"&year(Datafinal) & "'"

rsPrevisaoH.Open SQL, Conn, 1, 3

0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic



Publicidade




1 User(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)