CORTAR DECIMALES EN SQLSERVER Y HIBERNATE

399 views
Skip to first unread message

Ozkar

unread,
Jan 5, 2010, 6:34:40 PM1/5/10
to JavaSOS
Hola!!!

estoy intentando guardar digitos decimales con cierta cantidad de
decimales, en la aplicacion ya están correctamente truncados, pero en
la base de datos algunos me los respeta y otros no; el tipo de dato en
la base es float.

¿Cómo lo soluciono?

Saludos.

NachXs

unread,
Jan 6, 2010, 11:45:42 PM1/6/10
to jav...@googlegroups.com
Que base de datos utilizas?? tal vez si pruebas con el tipo de dato
decimal(entero, cantidad decimales)
--
Brando (NachXs)
Linux Registered #432532
http://nachxs.wordpress.com

> --
> www.JavaSOS.com
> Grupo de colaboración Java/J2ee para desarrolladores de habla hispana.

David Castañeda

unread,
Jan 7, 2010, 9:55:38 AM1/7/10
to jav...@googlegroups.com
hay muy poca información para dar una respuesta mas clara, pero tienes varias opciones que dependerán de otras consideraciones.

-Puedes utilizar un campo de texto
-Puedes utilizar dos campos numericos, uno para el num entero y el otro para el decimal.

después desde java lo conviertes, pero cualquiera de los dos casos va dificultar las consultas.

A mi me gusta la segunda opción si es una aplicación financiera que requiere cálculos exactos y utilizando BigDecimal. En el libro de effective java hay un item sobre estos casos por si quieres darle una leida.


Saludos.


2010/1/6 NachXs <nac...@gmail.com>

Oscar Cervantes

unread,
Jan 7, 2010, 12:04:20 PM1/7/10
to jav...@googlegroups.com
SQLServer2000, creo que lo intentaré

Nícolas Villarreal

unread,
Jan 7, 2010, 4:39:34 PM1/7/10
to jav...@googlegroups.com
en sql server 2000 convert(numeric(10,2), @variable)
No More, ...SIMPLY NICO

Oscar Cervantes

unread,
Jan 7, 2010, 4:54:05 PM1/7/10
to jav...@googlegroups.com
pero desde hibernate puedo usar esa misma sentencia??

Nícolas Villarreal

unread,
Jan 7, 2010, 4:56:21 PM1/7/10
to jav...@googlegroups.com
la verdad no sabria decirte, que dice google sobre esa funcion en hibernate?

David Castañeda

unread,
Jan 7, 2010, 5:02:34 PM1/7/10
to jav...@googlegroups.com
Effective java 2nd ed
Item 48:
   Avoid float and double if exact answers are required


2010/1/7 Nícolas Villarreal <cel...@gmail.com>



--
David Castañeda R.

caerices

unread,
Jan 8, 2010, 6:38:30 AM1/8/10
to JavaSOS
Pero no es necesario, puedes hacer el insert en un procedimiento y
dentro de este lo haces..

On 7 ene, 18:54, Oscar Cervantes <ozka...@gmail.com> wrote:
> pero desde hibernate puedo usar esa misma sentencia??
>

> El 7 de enero de 2010 15:39, Nícolas Villarreal <cell...@gmail.com>escribió:
>
> > en sql server 2000 convert(numeric(10,2), @variable)
>

> > El 7 de enero de 2010 12:04, Oscar Cervantes <ozka...@gmail.com> escribió:
>
> > SQLServer2000, creo que lo intentaré
>
> >> El 6 de enero de 2010 22:45, NachXs <nac...@gmail.com> escribió:
>
> >>>  Que base de datos utilizas?? tal vez si pruebas con el tipo de dato
> >>> decimal(entero, cantidad decimales)
> >>> --
> >>> Brando (NachXs)
> >>> Linux Registered #432532
> >>>http://nachxs.wordpress.com
>
> >>> El mar, 05-01-2010 a las 15:34 -0800, Ozkar escribió:
> >>>  > Hola!!!
>
> >>> > estoy intentando guardar digitos decimales con cierta cantidad de
> >>> > decimales, en la aplicacion ya están correctamente truncados, pero en
> >>> > la base de datos algunos me los respeta y otros no; el tipo de dato en
> >>> > la base es float.
>
> >>> > ¿Cómo lo soluciono?
>
> >>> > Saludos.
> >>> > --

> >>>  >www.JavaSOS.com<http://www.javasos.com/>


> >>> > Grupo de colaboración Java/J2ee para desarrolladores de habla hispana.
>
> >>> --
>

> >>>www.JavaSOS.com<http://www.javasos.com/>


> >>> Grupo de colaboración Java/J2ee para desarrolladores de habla hispana.
>
> >> --

> >>www.JavaSOS.com<http://www.javasos.com/>

Edson Chavez

unread,
Jan 18, 2010, 10:22:37 AM1/18/10
to jav...@googlegroups.com
hibernate te permite ejecutar sql nativo, de momento no tengo a la mano algun ejemplo pero googleando un poco estoy seguro que encontraras facilmente algo, saludos

Edson
http://www.sindominio.net/ayuda/preguntas-inteligentes.html
http://soyfreakytambiengeek.blogspot.com/ <-- Mi Blog ^^

Oscar Cervantes

unread,
Jan 18, 2010, 10:30:13 AM1/18/10
to jav...@googlegroups.com
ok, eso seria interesante, porque consulté el el libro efective java antes mensionado y hablan del uso del BigDecimal y eso me parece ok, pero el problema continua cuando intento almacenarlo en la base, creo que cambiaré mis tipos de datos de float a decimal y especificando los decimales en la tabla.

Igual voy a buscar lo que me comentas.

Gracias.

Octavio Nuñez

unread,
Jan 18, 2010, 1:54:19 PM1/18/10
to jav...@googlegroups.com
Bueno puedes usas redondeos y subtring para el manejo de salida de datos y te desentienedes de la forma como lo alacena la bd.

Saludos
Octavio E. Núñez R.
Desarrollador de Software, Soporte Técnico y Seguridad Informática
enriqu...@hotmail.com - enriqu...@gmail.com
6621-5790 -ICQ  157-246-843 - Skype: enrique16173
Reply all
Reply to author
Forward
0 new messages