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

Editar campo tipo "Fecha" en BD Accses - ASP

Estas en el tema de Editar campo tipo "Fecha" en BD Accses - ASP en el foro de ASP Clásico en Foros del Web. Hola, tengo una duda sobre como editar datos tipo "fecha" en un base de datos Accses, mi página ASP contiene un formulario para editar registros ...
  #1 (permalink)  
Antiguo 20/09/2008, 17:03
 
Fecha de Ingreso: septiembre-2008
Mensajes: 39
Antigüedad: 15 años, 8 meses
Puntos: 0
Editar campo tipo "Fecha" en BD Accses - ASP

Hola, tengo una duda sobre como editar datos tipo "fecha"
en un base de datos Accses, mi página ASP contiene un formulario para editar registros en la base de datos, y la base de datos tiene 3 campos tipo "texto" y 1 campo tipo "fecha", el problema ocurre cuando en el formulario de editar el campo fecha coloco por ej. : 20/09/2008, al dar el boton de submit, me muestra el siguiente error:

Tipo de error:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][Controlador ODBC Microsoft Access] No coinciden los tipos de datos en la expresión de criterios.
/ddpharma/prueba2.asp, línea 87

cómo se debe colocar un campo tipo fecha para que lo acepte la Base de Datos?

Gracias mil a todos, el foro esta muy bueno y útil.
  #2 (permalink)  
Antiguo 20/09/2008, 17:30
Avatar de GABRIL  
Fecha de Ingreso: febrero-2007
Mensajes: 280
Antigüedad: 17 años, 3 meses
Puntos: 4
Respuesta: Editar campo tipo "Fecha" en BD Accses - ASP

si pudieras poner el codigo, para dar una chekeada, asegurate de que el campo en access, realmente sea tipo fecha, en formato dd/mm/aaaa.
  #3 (permalink)  
Antiguo 20/09/2008, 19:32
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 17 años, 3 meses
Puntos: 88
Respuesta: Editar campo tipo "Fecha" en BD Accses - ASP

primero... debes chekar si esta correcto el formato de tu base de datos (DD/MM/AAAA), ciertos casos es (AAAA/MM/DD)

tambien puedes usar algunas funciones como esta para manipular bien la fomar de tu fecha
Cita:
Código ASP:
Ver original
  1. <&#37;
  2. Function FechaGenerica(fecha)
  3.     If IsDate(fecha) = True Then
  4.             DIM dteDay, dteMonth, dteYear
  5.             dia = Day(fecha)
  6.             mes = Month(fecha)
  7.             ano   = Year(fecha)
  8.             FechaGenerica = ano & "/" & Right(Cstr(mes + 100),2) & "/" & Right(Cstr(dia + 100),2)
  9.       Else
  10.             FechaGenerica = Null
  11.       End If
  12. End Function
  13. %>
Una última cosa. En sentencias SQL que actualizan bases Access, las fechas se pasan entre # #.
Por ejemplo: INSERT INTO tabla(fecha) VALUE(#"& var_fecha &"#)
fuente de codigo

__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #4 (permalink)  
Antiguo 21/09/2008, 06:41
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 5 meses
Puntos: 126
Respuesta: Editar campo tipo "Fecha" en BD Accses - ASP

Hola

Yo el campo que contendría la fecha, lo pondría tipo texto.
El problema está en cuando quieres comparar dos fechas, pero solo has de hacer

[highlight="asp"]Dte = rs.Fields("FechaResp")
fbd =day(Dte)&"/"&month(Dte)&"/"&year(Dte)

IF una fecha = CDate(fbd) then[/highlight]

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />

Última edición por Adler; 22/09/2008 a las 15:16
  #5 (permalink)  
Antiguo 21/09/2008, 10:29
 
Fecha de Ingreso: septiembre-2008
Mensajes: 39
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Editar campo tipo "Fecha" en BD Accses - ASP

no funcionó poner # en la secuencia SQL:

"INSERT INTO tabla(fecha) VALUE(#"& var_fecha &"#)", sigue dando el mismo error,

Tipo de error:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][Controlador ODBC Microsoft Access] No coinciden los tipos de datos en la expresión de criterios.

voy a probar lo otro y les aviso,...Gracias
  #6 (permalink)  
Antiguo 21/09/2008, 14:51
 
Fecha de Ingreso: septiembre-2008
Mensajes: 39
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Editar campo tipo "Fecha" en BD Accses - ASP

Este es el código:

<form method="post" action="prueba2.asp">
Actual: <%if fecha2="" then
response.write(fecha)
else
response.write(fecha2)
end if
%>
<br>
Nueva Fecha: <input type="text" name="fecha2">
<input type="hidden" name="fecha" value="<%=fecha%>">
<input type="hidden" name="resultado" value="editado">
<input type="submit" value="Guardar"><br><br>
</form>


<%if fecha2="" then
else

strSQL = "UPDATE NOTICIAS1 set FECHA='"& fecha2 &"' where FECHA= '" & fecha & "';"
objrs.Open strSQL, oConn

response.write("se editó con éxito")

end if%>
  #7 (permalink)  
Antiguo 21/09/2008, 14:54
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 17 años, 3 meses
Puntos: 88
Respuesta: Editar campo tipo "Fecha" en BD Accses - ASP

Código ASP:
Ver original
  1. strSQL = "UPDATE NOTICIAS1 set FECHA='#"& fecha2 &"#' where FECHA= '#" & fecha & "#';"
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #8 (permalink)  
Antiguo 21/09/2008, 16:55
 
Fecha de Ingreso: septiembre-2008
Mensajes: 39
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Editar campo tipo "Fecha" en BD Accses - ASP

Hola de nuevo, no funcionó la secuencia SQL:

strSQL = "UPDATE NOTICIAS1 set FECHA='#"& fecha2 &"#' where FECHA= '#" & fecha & "#';"

sigue dando el mismo error....seguiré investigando, Gracias
  #9 (permalink)  
Antiguo 21/09/2008, 17:00
Avatar de Julcar  
Fecha de Ingreso: noviembre-2007
Ubicación: C:\inetpub\wwwroot\Guayaquil
Mensajes: 1.507
Antigüedad: 16 años, 6 meses
Puntos: 54
Respuesta: Editar campo tipo "Fecha" en BD Accses - ASP

Revisa el formato de fecha, deberia ser fecha corta, eso se lo revisa en la vista diseño.
__________________
Linux no es el único S.O. libre, conoce a ReactOS el Windows Libre!
"Si mis respuestas te dan la calma, espárceme un poco de karma"
  #10 (permalink)  
Antiguo 21/09/2008, 17:12
 
Fecha de Ingreso: septiembre-2008
Mensajes: 39
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Editar campo tipo "Fecha" en BD Accses - ASP

ya lo hice, esta en formato fecha corta, pero nada todavia...
  #11 (permalink)  
Antiguo 22/09/2008, 03:05
 
Fecha de Ingreso: septiembre-2008
Mensajes: 39
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Editar campo tipo "Fecha" en BD Accses - ASP

Si se pudo!.

Última edición por Edyvargas; 22/09/2008 a las 03:10 Razón: equivocación
  #12 (permalink)  
Antiguo 22/09/2008, 03:07
 
Fecha de Ingreso: septiembre-2008
Mensajes: 39
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Editar campo tipo "Fecha" en BD Accses - ASP

Lo logré!!!, el problema era en la parte "where" de la secuencia SQL, antes yo colocaba

where FECHA='" & fecha & "';"

trayendo la variable "fecha" con un request.form("fecha") desde otra página,
al parecer al hacer esto se perdía cierto tipo de coincidencia con el campo fecha de la base de datos el cual yo quería editar, entonces en vez de comparar el registro a editar con el campo "fecha", lo comparé con los campos "titular" y "noticia" del mismo registro, y si funcionó!
realizó el update con la nueva fecha sin problemas, ej.:

strSQL = "UPDATE NOTICIAS1 set FECHA='"& fecha2 &"' where TITULAR= '" & titular & "' and NOTICIA= '" & noticia & "';"
objrs.Open strSQL, oConn

GRACIAS a todos por su tiempo y ayuda.
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 00:29.