Foros del Web » Bases de Datos » SQL Server »

almacenar un varchar en un campo datetime?

Estas en el tema de almacenar un varchar en un campo datetime? en el foro de SQL Server en Foros del Web. Hola! Después de mucho buscar... no he encontrado el porque de este error: Microsoft OLE DB Provider for ODBC Drivers error '80040e07' [Microsoft][ODBC SQL Server ...
  #1 (permalink)  
Antiguo 16/08/2007, 07:04
 
Fecha de Ingreso: diciembre-2002
Ubicación: Villa Alemana
Mensajes: 103
Antigüedad: 11 años, 10 meses
Puntos: 0
almacenar un varchar en un campo datetime?

Hola!
Después de mucho buscar... no he encontrado el porque de este error:


Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][ODBC SQL Server Driver][SQL Server]Syntax error converting datetime from character string.

/MantenedorTarifario/GuardaTarifas.asp, line 36


EL código esta en un procedimiento almacenado, e intenta almacenar en un campo datetime una fecha, la que debiera ser el 01 de Enero del próximo año.


declare @error as int
declare @prox_anno as int
declare @fecha_ing as varchar

set @prox_anno= year(getdate()) +1
set @fecha_ing = convert(varchar,@prox_anno) + '-01-01'
set @error = 0

INSERT INTO TPTarifaMonto (CDTPTarifa, FCIngreso, FCInicio, FCFin, NRBase, NRFactor )
VALUES (@CDTarifa,getdate(), convert(datetime,@fecha_ing,120),'2008/12/31', @monto,@recarga)

Muchas Gracias
  #2 (permalink)  
Antiguo 16/08/2007, 08:15
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.201
Antigüedad: 9 años, 6 meses
Puntos: 47
Re: almacenar un varchar en un campo datetime?

Hola niña

Si pusieras

declare @fecha_ing as datetime

en vez de

declare @fecha_ing as varchar

todos tus problemitas estuvieran solucionados
  #3 (permalink)  
Antiguo 16/08/2007, 09:23
 
Fecha de Ingreso: diciembre-2002
Ubicación: Villa Alemana
Mensajes: 103
Antigüedad: 11 años, 10 meses
Puntos: 0
Re: almacenar un varchar en un campo datetime?

Gracias!!
=P
  #4 (permalink)  
Antiguo 16/08/2007, 11:20
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.119
Antigüedad: 7 años, 3 meses
Puntos: 161
Re: almacenar un varchar en un campo datetime?

Kryna

Siempre maneja los formatos de fecha en ANSI (yyyy-mm-dd), te evitas muchos dolores de cabeza.

VALUES (@CDTarifa,getdate(), convert(datetime,@fecha_ing,120),'2008-12-31', @monto,@recarga)
  #5 (permalink)  
Antiguo 14/12/2007, 03:23
 
Fecha de Ingreso: junio-2007
Mensajes: 24
Antigüedad: 7 años, 3 meses
Puntos: 0
Re: almacenar un varchar en un campo datetime?

Yo tengo un problema parecido quiero actualizar datos en mi tabla de la bd segun los datos que introduzca el usuario en la tabla del formulario y me dice lo del error converting datetime from character string he probado lo que aqui decis y no me hace ni caso, esta es la select :

" UPDATE ^^UM_BPEFJCLASESFACTORES SET PCFA_OrigenADG = '" & col1 & "', PCFA_ID = '" & col5 & "', PCFA_IDPEFJ = '" & col4 & "', PCFA_IDSUPERCLASE = '" & col3 & "', PCFA_IDCLASE = '" & col2 & "', PCFA_FPC1 = '" & col6 & "', PCFA_FPC2 = '" & col7 & "', PCFA_FPC3 = '" & col8 & "' , PCFA_FPC4 = '" & col9 & "', PCFA_FPC5 = '" & col10 & "', PCFA_FPP1 = '" & col11 & "', PCFA_FPP2 = '" & col12 & "',
& "PCFA_PPC = '" & col13 & "', PCFA_DptoHomolog = '" & col14 & "', PCFA_FHomologa = 'CONVERT(DateTime," & col15 & ",120)' WHERE PCFA_ID = '" & col5 & "'

Los col son las columnas del grid de la aplicacion y si me esta recogiendo bien esos datos. Gracias de antemano. Un saludo
  #6 (permalink)  
Antiguo 14/12/2007, 07:53
Avatar de royrojas  
Fecha de Ingreso: diciembre-2004
Mensajes: 458
Antigüedad: 9 años, 9 meses
Puntos: 3
Re: almacenar un varchar en un campo datetime?

Col15 que valor tiene?

que te retornan las siguientes consultas

select Col15
select CONVERT(DateTime, Col15, 120)
__________________
roy rojas
Programación en Español: DotNetcr.com
  #7 (permalink)  
Antiguo 29/01/2008, 03:14
 
Fecha de Ingreso: junio-2007
Mensajes: 24
Antigüedad: 7 años, 3 meses
Puntos: 0
Re: almacenar un varchar en un campo datetime?

Perdon, lo qrregle y se me olvido responder, lo siento mucho. Lo arregle con #" & Col15 & "#. Un saludo
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 10:46.
SEO by vBSEO 3.3.2