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

Fechas Sql Sever

Estas en el tema de Fechas Sql Sever en el foro de ASP Clásico en Foros del Web. Hago lo siguinte, rrecupero los valores de u formulaior asi fecha=request.form("dia")&"/"&request.form("mes")&"/"&request.form("ano") si imprimo por pantalla tengo esto 12/12/2002 si lo trato de insertar en mi ...
  #1 (permalink)  
Antiguo 30/11/2002, 00:47
Avatar de deprabado  
Fecha de Ingreso: febrero-2002
Mensajes: 649
Antigüedad: 23 años, 2 meses
Puntos: 0
Fechas Sql Sever

Hago lo siguinte, rrecupero los valores de u formulaior asi

fecha=request.form("dia")&"/"&request.form("mes")&"/"&request.form("ano")

si imprimo por pantalla tengo esto 12/12/2002 si lo trato de insertar en mi bd SQL server asi '# & fecha & #' tengo el error de los tipos de datos no coinciden...

por que me pasa esto????

el campo es fecha
  #2 (permalink)  
Antiguo 30/11/2002, 03:35
Avatar de Avelar  
Fecha de Ingreso: noviembre-2002
Ubicación: Ensenada, Baja California, México
Mensajes: 673
Antigüedad: 22 años, 5 meses
Puntos: 1
Lo que sucede es que la configuración del servidor SQL Server recibe el orden del año, mes día, hora...etc. en un orden específico...

Lo que yo hago para que eso no me afecte es decirle en qué orden daré los parámetros... la instrucción que empleo es la siguiente, poniendo primero el año, luego el mes, luego el día y de ser necesario la hora, minutos, segundos, milisegundos. Es esta:

Código:
'Tomar la fecha.
Fecha = Request.Form("Ano") & "-" & Request.Form("Mes") & "-" & Request.Form("Dia")

'Y al momento de enviar a insertar la fecha, utiliza la función Convert de SQL Server agregando un tercer parámetro:
cSQL = "INSERT INTO [TABLA] VALUES (CONVERT(DateTime, " & Fecha & ", 120), CAMPO2, CAMPO3, CAMPOn)
A mí no me ha dado problemas, pero puedes emplear el orden que quieras, con la función CONVERT.

Estando en el SQL Server Query Analyzer puedes presionar Shift + F1 y te saldrá la ayuda de Transact SQL y ahí busca el tema CAST and CONVERT. Ahí vienen los distintos formatos del manejo de fechas con el convert... pero debes cuidar ponerlos en el orden especificado en el tercer parámetro.

Espero te sirva.

Saludos
__________________
Ariel Avelar
  #3 (permalink)  
Antiguo 30/11/2002, 14:49
Avatar de deprabado  
Fecha de Ingreso: febrero-2002
Mensajes: 649
Antigüedad: 23 años, 2 meses
Puntos: 0
Avelar no entiendo la funcion convert...

esa fecha la necesito comparar luego con la fecha del servidor, por lo que el formtao seria mm/dd/aa, eso no es problema, pero como haria para subirla con ese formato a mi db sql server en un campo fecha???
  #4 (permalink)  
Antiguo 30/11/2002, 22:47
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 23 años, 2 meses
Puntos: 50
Hola.. mira... si quieres obtener la fecha.. para que no tengas problemas puedes hacer algo como esto:

Fecha = Format(Now, "dd/mm/yyyy hh:mm:ss")

para obtenerlo de tipo, "11/10/2002 18:30:20" por decir.. algo.. y esto lo guardara en tu BD de SQLserver.. sin problemas.. al menos eso es lo que utilizo en mi caso...

Aunque puedes utilizar por ejemplo la funcion covert como dice que compañero Avelar que es propia del SQL server.. para poder insertar los campos fechas...

insert into(......) values(convert(datetime,'" & Fecha & "',103))

Saludos y suerte..
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #5 (permalink)  
Antiguo 30/11/2002, 23:09
Avatar de deprabado  
Fecha de Ingreso: febrero-2002
Mensajes: 649
Antigüedad: 23 años, 2 meses
Puntos: 0
es un poco complicado explicar que queria hacer pero hay va...

1.- recojer mediante un formulario la fecha de nacimiento de alguien.

2.- en otra pagina el administrador diariamente enviara un e-mail x dias antes del cumple años de la persona por lo cual sumo 7 al dia del servidor y luego lo comparo con todos los registros de la base de datos...


ya solucione el problema insertando dia, mes y año en campos diferentes luego para comparar con la fecha del servidor hago esto

<%Actual= DateAdd("d", 7, Actual) %>
lueo recupero los valores del dia y mes por separado..
<%mes= Month(Actual) %>....

luego los comparo con los campos dia mes de mi base de datos....


un poquito enredado pero me funciona y no tengo problemas con el formato de la fecha...

gracias por sus respuestas y sugerencias
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 19:35.