Foros del Web » Programando para Internet » ASP Clásico »

Problemas con un UPDATE

Estas en el tema de Problemas con un UPDATE en el foro de ASP Clásico en Foros del Web. Hola, tengo un problema que si bien, creo no es serio, me ha tenido toda la mañana mareado... Explico, estoy trabajando en un editor de ...
  #1 (permalink)  
Antiguo 23/07/2003, 13:25
 
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago
Mensajes: 87
Antigüedad: 21 años, 5 meses
Puntos: 0
Pregunta Problemas con un UPDATE

Hola, tengo un problema que si bien, creo no es serio, me ha tenido toda la mañana mareado...

Explico, estoy trabajando en un editor de contenidos, y la idea es poder publicar contenidos con fecha de inicio y expiracion, la idea es dejar en la pagina principal una consulta de modificacion que revise los contenidos que ya hayan expirado y les cambie el estado de "3" (contenido ok) a estado "4" (contenido caducado) en forma automatica...

Segun mi logica (que es bastante ilogica) trato de hacer lo siquiente:

strSQL = " UPDATE Contenidos SET CEstado='4' WHERE CFechaexp >= " & now() & " AND CEstado = '3' "
Conexion.Execute strSQL

Esta malo? supongo que si, puesto que me arroja el siguiente error:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][Controlador ODBC Microsoft Access] Error de sintaxis (falta operador) en la expresión de consulta 'CFechaexp >= 23-07-03 03:09:20 p.m. AND CEstado = '3''.

Si alguien puede ayudarme le agradeceria bastante... estoy mareadisimo pues es una opcion que se me ocurrio agregar a ultima hora y ahora no funciona... jaja... bueno, agradesco cualquier ayuda...

Gigio
  #2 (permalink)  
Antiguo 23/07/2003, 13:33
 
Fecha de Ingreso: mayo-2002
Ubicación: La Rioja (España)
Mensajes: 18
Antigüedad: 22 años
Puntos: 0
Creo que te faltan las comillas simples en el now():


strSQL = " UPDATE Contenidos SET CEstado='4' WHERE CFechaexp >= ' " & now() & " ' AND CEstado = '3' "

Prueba asi, si no tambien suele dar muchos problemas el formato de la fecha, aunque no creo que sea por eso
  #3 (permalink)  
Antiguo 23/07/2003, 13:39
 
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago
Mensajes: 87
Antigüedad: 21 años, 5 meses
Puntos: 0
ya lo habia intentado.... al colocar las comillas en ' " & now() " ' me arroja el siquiente error:

Microsoft OLE DB Provider for ODBC Drivers error '80040e07'
[Microsoft][Controlador ODBC Microsoft Access] No coinciden los tipos de datos en la expresión de criterios.

si coloco almohadillas #" & now() "# :

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][Controlador ODBC Microsoft Access] Error de sintaxis en la fecha en la expresión de consulta 'CFechaexp >= #23-07-03 03:26:53 p.m.# AND CEstado = '3''.


Sigo mareandome...
  #4 (permalink)  
Antiguo 23/07/2003, 13:47
 
Fecha de Ingreso: mayo-2002
Ubicación: La Rioja (España)
Mensajes: 18
Antigüedad: 22 años
Puntos: 0
El error de "No coinciden los datos" ya me suena mas a problema de formato de fecha...
Es solo una idea, pero has probado con Date(), en lugar de now()?, te devuelve solo la fecha, sin la hora, supongo que en la base de datos CFechaexp no tendras almacenada la hora.
Otra posibilidad es que si la fecha que le pasas no tiene el mismo formato (dd/mm/yyyy o mm/dd/yyyy, no se cual utilizara) que la que hay almacenada no te las interprete como campos del mismo tipo
  #5 (permalink)  
Antiguo 23/07/2003, 14:04
 
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago
Mensajes: 87
Antigüedad: 21 años, 5 meses
Puntos: 0
Ahora si... con date() funciono de inmediato... jajaja... muchas gracias... muchas muchas gracias...

gigio
__________________
Gigio
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:42.