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

Formato de Fechas

Estas en el tema de Formato de Fechas en el foro de SQL Server en Foros del Web. Hola a todos estoy usando el SQL Manager 2005 for SQL Server , estoy exportando un SQL Script, pero el formato de la fecha me ...
  #1 (permalink)  
Antiguo 04/04/2006, 13:14
 
Fecha de Ingreso: enero-2002
Mensajes: 349
Antigüedad: 22 años, 3 meses
Puntos: 1
Formato de Fechas

Hola a todos estoy usando el SQL Manager 2005 for SQL Server, estoy exportando un SQL Script, pero el formato de la fecha me lo exporta asi, dd/mm/yyyy, y lo quiero asi yyyymmdd.

Gracias de antemano
  #2 (permalink)  
Antiguo 04/04/2006, 15:18
Avatar de .seb  
Fecha de Ingreso: marzo-2006
Ubicación: Uruguay
Mensajes: 493
Antigüedad: 18 años, 1 mes
Puntos: 1
Te recomiendo que hagas una rutina que te pase la fecha a string y lo manipules adentro como quieras la cual retornará la fecha en el formato que quieras. Yo tengo algo similar.
__________________
saludos
seba
http://sgomez.blogspot.com
  #3 (permalink)  
Antiguo 17/05/2006, 11:37
 
Fecha de Ingreso: enero-2003
Ubicación: Santiago
Mensajes: 301
Antigüedad: 21 años, 3 meses
Puntos: 1
codigo

podrias postear lo que tienes puede serme muy útil, ya que justo estoy en ese tema

gracias.-
__________________
Cristian...
  #4 (permalink)  
Antiguo 17/05/2006, 16:35
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
print convert(nchar(8), getdate(), 112)
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #5 (permalink)  
Antiguo 18/05/2006, 16:42
 
Fecha de Ingreso: enero-2003
Ubicación: Santiago
Mensajes: 301
Antigüedad: 21 años, 3 meses
Puntos: 1
tengo problemas con esta fecha; no puedo mostrarla adecuadamente,
el tipo es datetime (sql server)

esto es lo que quiero hacer:

<?php
//extraigo la fecha de la base de datos
$e_fecha = $db->f('nac_fecha');

$timestamp = strtotime($e_fecha);
$e_fecha2 = date('d-m-Y', $timestamp);
echo $e_fecha;
?>
ejemplo:
en el campo fecha de mi base de datos tengo este valor 16-01-1976

en el navegador me muestra esto:
16 Ene 1976 0:00
y si la quiero formatear me muestra esto
31-12-1969

como debo formatear esta fecha con php???

ahh cuando la guardo en la base la guarda 16-01-1976, que es como yo la veo cuando ingreso al motor de base de datos sql server
__________________
Cristian...
  #6 (permalink)  
Antiguo 19/05/2006, 14:38
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
El problema parece ser de PHP, que no es capaz de lidiar (por lo menos con esa función) con el tipo de datos de fecha de SQL Server.

La alternativa es dar el formato desde SQL y que PHP simplemente reciba una cadena a presentar (y no una fecha)
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #7 (permalink)  
Antiguo 19/05/2006, 15:40
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 19 años
Puntos: 47
Yo hago convert(varchar, ...

Supuestamente allí se hace texto.
  #8 (permalink)  
Antiguo 22/05/2006, 16:33
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Cita:
Iniciado por Developer9
Yo hago convert(varchar, ...

Supuestamente allí se hace texto.
Complementando. No es "supuestamente"; efectivamente ahí la haces texto
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #9 (permalink)  
Antiguo 23/05/2006, 07:22
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 19 años
Puntos: 47
Diferencias:

convert(nchar(8), getdate(), 112)

convert(varchar, getdate(),112)

  #10 (permalink)  
Antiguo 23/05/2006, 16:44
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
El tipo de datos.

Entre varchar y char la diferencia es que uno se come los espacios sobrantes y el otro no.

La "N" en los tipos de datos significa que es un tipo unicode (o sea que puede manejar cualquier caracter del mundo). Aunque eso ocupa 2 bytes por caracter y no uno que es el de los tipos tradicionales.

El no usar longitud dices que la cadena se hará con la longitud default del varchar. Si mal no recuerdo la longitud default es 32. De manera que varchar equivale a varchar(32); un desperdicio de memoria si sabes que unicamente utilizarás 8 o 10 cars.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #11 (permalink)  
Antiguo 24/05/2006, 11:24
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 19 años
Puntos: 47
Gracias... entonces si tengo fechas asi: 01-01-2005 le pondré varchar(10)
  #12 (permalink)  
Antiguo 15/06/2006, 21:17
 
Fecha de Ingreso: marzo-2006
Ubicación: Pucallpa-Perú
Mensajes: 15
Antigüedad: 18 años, 1 mes
Puntos: 0
Nuestro amido DEV tiene razon yo tambien estuve viendo este problema de convertir un formato de fechas datatime a char o varchar, aqui pongo un ejemplo con procedimientos almacenados de una tabla ficha personal, en este ejemplo solo importa la parte de convert(tipoDatoAconvertir,campo o @variable,estilo)
estilo hay de varios tipos:
10=formato de salida mm-dd-yy
110=formato de salida mm-dd-yyyy
11=formato de salido yy/mm/dd
111=formato de salido yyyy/mm/dd
este es el procedimiento almacenado que me realiza una consulta de una ficha personal segun el codigo de ficha ingresado en el script PHP:
CREATE PROCEDURE spFicha_BC @vcodficha char(6)
AS
SELECT CodFicha, FecCrea, ApePat, ApeMat, Nombre, Direccion, TelParticular, TelCelular, LugNac,
Convert(char(10),FecNac,10) as FecNac, DNI, Sexo, NroAutgenerado, NomAFP, TelfAFP,
CtaBcoNacion, CussAFP, NroColgiatura, Emailunu, Emailper, NomFoto, EstadoCivil, CodUsuario FROM FichaPersonal WHERE CodFicha=(simbolo arroba sin parentesis)vcodficha
GO

el resultado de este procemidimiento almacenado es un registro con el campo fecha(datatime) a convertido a char por ejemplo 15-02-92
pero si quiero que sea 15/02/92 tengo que utilizar la funcion str_replace("-","/",$variablefecha) de PHP y muestra 15/02/92
eso es todo.
Atte. Hugo Flores J.
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 22:22.