Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Ayuda con fechas en Insert / Configuracion BD.

Estas en el tema de Ayuda con fechas en Insert / Configuracion BD. en el foro de SQL Server en Foros del Web. Hola foristas!!! Tengo toda una aplicación hecha en php (que no viene al caso) concectando a un motor SQL2000. Actualmente la empresa adquirió SQL2005 y ...
  #1 (permalink)  
Antiguo 22/11/2007, 16:08
Avatar de Hollman  
Fecha de Ingreso: enero-2003
Ubicación: Bogotá - Colombia
Mensajes: 202
Antigüedad: 22 años
Puntos: 1
Ayuda con fechas en Insert / Configuracion BD.

Hola foristas!!!

Tengo toda una aplicación hecha en php (que no viene al caso) concectando a un motor SQL2000. Actualmente la empresa adquirió SQL2005 y la aplicación ahora NO funciona. Tengo problemas con los formatos fecha.

Los querys son del tipo:

insert into SGD_SRD_SERIESRD(SGD_SRD_CODIGO, SGD_SRD_DESCRIP, SGD_SRD_FECHINI, SGD_SRD_FECHFIN ) VALUES (2, 'SERIE DOCUMENTAL 02' , '2007-11-22', '2007-11-22') ==> No funciona.
Sale el error : "La conversión del tipo de datos char a datetime produjo un valor datetime fuera de intervalo".


Pero de la forma ...

insert into SGD_SRD_SERIESRD (SGD_SRD_CODIGO, SGD_SRD_DESCRIP, SGD_SRD_FECHINI, SGD_SRD_FECHFIN )
VALUES (2,'SERIE DOCUMENTAL 02' , '22-11-2007', '22-12-2007') ==>SI funciona.


He probado cambiando la configuración de la BD de modern_spanish_CI_AS a Latin_General_CI_AS pero NADA!!!!

He leido la documentación de SQL2005 y supestamente acepta el formato [19]96/[0]4/15 -- (ymd)


POR FAVOR!!! una ayudita.

Éxitos.
  #2 (permalink)  
Antiguo 22/11/2007, 18:16
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 5 meses
Puntos: 180
Re: Ayuda con fechas en Insert / Configuracion BD.

Los campos tipo FECHA (DATETIME) son manejados por la mayoria de los motores con ANSI (yyyymmdd hh:mm:ss, nnn).

Particularmente SQL Server, maneja un LENGUAJE, si esta en español, intenta cambiarlo a ingles, ya sea en tu base o en tu usuario.
  #3 (permalink)  
Antiguo 26/02/2008, 08:53
Avatar de Rinnegan  
Fecha de Ingreso: febrero-2008
Mensajes: 11
Antigüedad: 16 años, 10 meses
Puntos: 0
Re: Ayuda con fechas en Insert / Configuracion BD.

Otra forma es pasarlo como char de 10 a un procedimiento almacenado
como dd/mm/yyyy , y al momento de insertarlo hacerlo de la siguiente forma.

Ojo trata de que cuando le pases los parametros sean en el mismo orden en que estan unicadas las variables internas del procedimiento para evitar problemas, o que trabaje con variables de tipos diferentes y te arroje error.

insert into SGD_SRD_SERIESRD (SGD_SRD_CODIGO, SGD_SRD_DESCRIP, SGD_SRD_FECHINI, SGD_SRD_FECHFIN )
VALUES (@codigo,
@descripcion ,
convert(datetime, @fechaini, 20),
convert(datetime, @fechater, 20));

el numero 20 es un formato, te la guarda yyyy/mm/dd
busca el que mas te acomode.
  #4 (permalink)  
Antiguo 08/07/2009, 11:26
 
Fecha de Ingreso: julio-2009
Mensajes: 5
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Ayuda con fechas en Insert / Configuracion BD.

Hola a todos yo tengo un problema parecido....

Resulta que yo tengo una aplicacion en VB6 y sql2002... para insertar una fecha desde visual utilizo una variable de tipo string es decir envio el dato de la siguiente forma:

"08/07/2009"

al campo en sql de tipo datetime y me funciona sin problema....

el problema surge cuando quiero hacer lo mismo con sql 2005, aparentemente no me deja convertir datos de char a datetime... que si me deja en sql 2002

si alguien me puede explicar que esta pasando con el tipo de dato datetime en sql 2005??

puesto que mi deseo en lo posible es no alterar mi aplicacion utilizando sql 2005

Espero su ayuda¡¡¡¡
  #5 (permalink)  
Antiguo 08/07/2009, 12:48
 
Fecha de Ingreso: julio-2009
Mensajes: 5
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Ayuda con fechas en Insert / Configuracion BD.

...encontre una solucion a este problema... me imagino que tambien resulta para ti hollman, lo que hice yo es especificar en la cadena de conexion el idiomal... y listo todo funciona igual que cuando utilizaba sql 2000...

para mi caso añadi el parametro

LANGUAGE=Español

dentro de la cadena de conexion... y listo ya no me salio el error... claro todo dependera en que configuracion de fecha estas trabajando eso dependera que lenguaje le asignes en la cadena de conexion... para mi caso es español.

espero te ayude¡¡¡
  #6 (permalink)  
Antiguo 23/09/2010, 13:39
 
Fecha de Ingreso: agosto-2010
Mensajes: 7
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Ayuda con fechas en Insert / Configuracion BD.

Hola Saulazo:

Tengo tu mismo problema, pero yo soy novato en SQL Server,
y tengo SQL en español, dónde pongo ese parámetro LANGUAGE=Español ?

Gracias por tu ayuda
  #7 (permalink)  
Antiguo 23/09/2010, 13:52
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 5 meses
Puntos: 180
Respuesta: Ayuda con fechas en Insert / Configuracion BD.

Dice que en la CADENA DE CONEXION

http://www.connectionstrings.com/
__________________
MCTS Isaias Islas
  #8 (permalink)  
Antiguo 23/09/2010, 14:31
 
Fecha de Ingreso: febrero-2009
Mensajes: 312
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Ayuda con fechas en Insert / Configuracion BD.

Cita:
Iniciado por saulazo Ver Mensaje
Hola a todos yo tengo un problema parecido....

Resulta que yo tengo una aplicacion en VB6 y sql2002... para insertar una fecha desde visual utilizo una variable de tipo string es decir envio el dato de la siguiente forma:

"08/07/2009"

al campo en sql de tipo datetime y me funciona sin problema....

el problema surge cuando quiero hacer lo mismo con sql 2005, aparentemente no me deja convertir datos de char a datetime... que si me deja en sql 2002

si alguien me puede explicar que esta pasando con el tipo de dato datetime en sql 2005??

puesto que mi deseo en lo posible es no alterar mi aplicacion utilizando sql 2005

Espero su ayuda¡¡¡¡
Hola, suponiendo y dando por hecho que las BD de ambos motores tengan el mismo collation, apostaría bastante alto que el lenguaje del login de la BD no es el mismo... ¿Lo probaste?

Saludos
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:37.