Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   ASP Clásico (http://www.forosdelweb.com/f15/)
-   -   Error ORA-01840: el valor de entrada no es lo bastante largo para el formato de fecha (http://www.forosdelweb.com/f15/error-ora-01840-valor-entrada-no-bastante-largo-para-formato-fecha-592076/)

lmerli 31/05/2008 12:52

Error ORA-01840: el valor de entrada no es lo bastante largo para el formato de fecha
 
Hola wenas, pues como dice el titulo del post, estoy haciendo una pagina en asp, con conexion a oracle, recojo datos que tengo que insertar en una tabla dos de los datos son fecha. y me sale el error

Microsoft OLE DB Provider for Oracle error '80040e07'

ORA-01840: el valor de entrada no es lo bastante largo para el formato de fecha

la consulta que hago es esta

sql="Insert Into NOTICIA (TITULO,RESUMEN,DESCRIPCION,IMAGEN,FECHA_INICIO,FE CHA_FIN,ID_AUTOR,PRIMERA_PLANA,SECCION) values ('" & titulo & "','" & resumen & "','" & descripcion & "','" & imagen & "','" & seccion & "','" & fechainicio & "','" & fechafin & "','" & portada & "','" & autor & "')"
set RS =cn.Execute(sql)
set RS =cn.Execute("commit")
%>

Obviamente los campos estan bien escritos tan y cual como en oracle
y las variables estan todas declaradas con el mismo nombre que tienen en el value y tienen el request.form correcto.

un desc de la tabla NOTICIA por si ayuda...

Nombre ¿Nulo? Tipo
ID_NOTICIA NOT NULL NUMBER(3)
TITULO VARCHAR2(100)
RESUMEN VARCHAR2(400)
DESCRIPCION VARCHAR2(4000)
IMAGEN VARCHAR2(300)
FECHA_INICIO DATE
FECHA_FIN DATE
ID_AUTOR VARCHAR2(9)
PRIMERA_PLANA VARCHAR2(2)
SECCION NUMBER(2)

* para el campo id_noticia tengo un trigger

gracias de antemano
un saludo

u_goldman 02/06/2008 12:02

Respuesta: Error ORA-01840: el valor de entrada no es lo bastante largo para el forma
 
Hazle un Response.Write a tu consulta, seguida de Response.End y pega el resultado aquí, lo que nos interesaría ver es que está llegando en los valores de fecha.

Saludos

lmerli 02/06/2008 12:36

Respuesta: Error ORA-01840: el valor de entrada no es lo bastante largo para el forma
 
Hola, gracias por contestar, mira he hecho lo siguiente, antes del insert

response.Write(fechainicio)
response.Write(" y la otra ")
response.Write(fechafin)
response.End()


y me devuelve los datos exctamente igual que introduzco en el formulario

10/02/2000 y la otra 12/03/2030

tambien he probado de poner la fecha dele stilo
10/10/00

Nose que puede pasar...
bueno gracias de nuevo
saludos

u_goldman 02/06/2008 12:47

Respuesta: Error ORA-01840: el valor de entrada no es lo bastante largo para el forma
 
Según yo -no me hagas mucho caso- a Oracle deberías pasarle horas, minutos y segundos

Trata este formato, o modifícalo de acuerdo a tu formato de fecha

'YYYY-MM-DD HH:MI:SS'

Saludos

Osirapis 06/10/2008 02:26

Respuesta: Error ORA-01840: el valor de entrada no es lo bastante largo para el forma
 
Lo que te ocurre es que a Oracle le estás pasando una cadena (fechainicio y fechafin) para llenar un campo de tipo fecha, y no le dices el formato que tiene esa cadena.

Prueba así:

sql="Insert Into NOTICIA (TITULO,RESUMEN,DESCRIPCION,IMAGEN,FECHA_INICIO,FE CHA_FIN,ID_AUTOR,PRIMERA_PLANA,SECCION) values ('" & titulo & "','" & resumen & "','" & descripcion & "','" & imagen & "','" & seccion & "','" & to_date (fechainicio, 'DD/MM/YYYY') & "','" & to_date(fechafin, 'DD/MM/YYYY') & "','" & portada & "','" & autor & "')"

Suerte.


La zona horaria es GMT -6. Ahora son las 09:51.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.