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

Formato por defecto de los numeros decimales.

Estas en el tema de Formato por defecto de los numeros decimales. en el foro de SQL Server en Foros del Web. Hola!! Queria saber si es posible cambiar el formato por defecto de los números decimales, de una forma similar con la que podemos cambiar el ...
  #1 (permalink)  
Antiguo 03/08/2007, 09:38
 
Fecha de Ingreso: diciembre-2005
Mensajes: 3
Antigüedad: 18 años, 4 meses
Puntos: 0
Formato por defecto de los numeros decimales.

Hola!!

Queria saber si es posible cambiar el formato por defecto de los números decimales, de una forma similar con la que podemos cambiar el formato de las fechas utilizando: "SET DATEFORMAT". Evitando así tener que usar CAST o CONVERT para cada registro.


Haciendo consultas a las filas de tipo decimal quiero que se me retornen por defecto números en el formato:

numeros coma decimales
Código:
4865,005
en lugar de

numeros punto decimales
Código:
4865.005


Sería posible?


Gracias
Saludos.

Última edición por swasman; 03/08/2007 a las 09:50
  #2 (permalink)  
Antiguo 03/08/2007, 18:34
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Re: Formato por defecto de los numeros decimales.

No con una instruccion SET, como el que mencionas, en realidad el PUNTO y/o COMA para la separacion de decimales, va en conjunto con el LENGUAJE que tiene declarado en las opciones del SERVER SETTINGS de las propiedades de tu servidor.

Puedes hacer un truco en SQL Server, solo que yo creo que esto deberia hacerlo el FRONT.

SELECT REPLACE(CAST(1234.1236 AS VARCHAR(10)), '.', ',')
  #3 (permalink)  
Antiguo 04/08/2007, 09:23
 
Fecha de Ingreso: diciembre-2005
Mensajes: 3
Antigüedad: 18 años, 4 meses
Puntos: 0
Re: Formato por defecto de los numeros decimales.

Hola!

Muchas gracias iislas.



Para cambiar el LENGUAGE mediante las SERVER SETTINGS, qué es lo que tengo que hacer?

La solución que me propones al final:
Código:
SELECT REPLACE(CAST(1234.1236 AS VARCHAR(10)), '.', ',')
quería evitarla ya que tengo que retornar muchas filas y luego transformarlas todas, estoy seguro de que siempre voy a utilizar los decimales con el separador coma, me sería un engorro tener que estar cambiarndo siempre la consulta en los selects y el los where.


Saludos.
  #4 (permalink)  
Antiguo 06/08/2007, 06:41
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 4 meses
Puntos: 38
Re: Formato por defecto de los numeros decimales.

Este formato lo puedes aplicar tambien en el front (VB, C#,etc) ya que el campo numerico no guarda internamente los separadores sino que se formatea al ser presentado en la pantalla....
__________________
La sencillez y naturalidad son el supremo y último fin de la cultura...
--
MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications.
  #5 (permalink)  
Antiguo 06/08/2007, 10:22
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Re: Formato por defecto de los numeros decimales.

De acuerdo con Andres.

Pudieras cambiar el LENGUAJE del Server Settings, solo que afectaria otras cosas, como los campos DATETIME, por ejemplo.

Yo tomaria la oferta de Andres.

Saludos.
  #6 (permalink)  
Antiguo 15/08/2007, 11:20
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Re: Formato por defecto de los numeros decimales.

Cierto, eso es tema de la capa de presentación, no de datos.

Aunque si insistes pudiera ser que cambiar el idioma por default del Login en la seguridad de SQL Server haga el truco.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 19:41.