Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/11/2004, 15:00
Avatar de luisvasquez
luisvasquez
 
Fecha de Ingreso: diciembre-2003
Ubicación: Venezuela
Mensajes: 879
Antigüedad: 21 años, 4 meses
Puntos: 6
Problemas comparando fechas en DELETE

Amigos,

Les escribo porque tengo un problema que no he podido resolver. Al parecer es muy sencillo, pero yo no lo veo. El codigo es el siguiente:

Set objCon = CreateObject("ADODB.Connection")
Set objRec = CreateObject("ADODB.Recordset")
objCon.Open strCon
Set objRec.ActiveConnection = objCon
objRec.LockType = 2
sql = "delete from passwords where fecha) < "&now()
objRec.Open sql
objCon.Close
Set objRec = Nothing
Set objCon = Nothing

El error que me arroja es :

Microsoft JET Database Engine (0x80040E14)
Error de sintaxis (falta operador) en la expresión de consulta 'fecha <18-11-2004 12:56:44'.

Si cambio el SQL para colocarle comillas asi:

sql = "delete from passwords where fecha) < '"&now()&"'"

Entonces falla así:

Microsoft JET Database Engine (0x80040E07)
No coinciden los tipos de datos en la expresión de criterios.

Lo que descarta la posibilidad de que esté interpretando la fecha como si fuese otro tipo de datos...

Por otra parte, en la misma tabla existe otro campo alfanumerico llamado "telefono" e hice la prueba de cambiar el SQL asi:

variable = 4444
sql = "delete from passwords where telefono ='"&variable&"'"

El resultado es que se borró todos los registros cuyo telefono = 4444...

La pregunta es : ¿Que hice mal??

Podrían ustedes darle una miradita al codigo y sacarme de este loop en el que estoy metido??

Un millón de gracias,