Sobre tipos numericos y char a usar

18/02/2005 - 15:55 por Leopoldo Ramos | Informe spam
Saludos. Estoy comenzando en esto de sql server para ello haciendo un
sistemita sencillo.
1) Quiero saber para digamos almacenar el valor total de una factura con dos
decimales (rango de 1 a 9999999.99), cual es el tipo mas recomendado (money,
numeric, etc) ?

2) Para el caso de datos caracter como el nombre de un proveedor o una nota,
que es mas apropiado un char o un varchar ? En realidad cuando es mejor usar
un varchar que un char ?


Gracias
Leopoldo
Puerto Rico
 

Leer las respuestas

#1 Alejandro Mesa
18/02/2005 - 16:13 | Informe spam
Leopoldo,

1) Quiero saber para digamos almacenar el valor total de una factura con dos
decimales (rango de 1 a 9999999.99), cual es el tipo mas recomendado (money,
numeric, etc) ?



Si lo que vas a almacenar en ese campo son valores monetarios, entonces usa
MONEY. Hay algunas aplicaciones que usan NUMERIC pero son casos especificos
que requieren una precision mas alla del cuarto digito decimal (MONEY solo
soporta 4), como son casas de cambios, bolsa de valores, etc. Me he
encontrado el caso, de aplicaciones CRM de compañias bien conocidas, que usan
FLOAT, pero ojo, este tipo de datos es aproximado y sql server no garantiza
que el valor insertado en la tabla sea el mismo cuando se consulte,
especialmente los terminados .3, .6, y .7.

2) Para el caso de datos caracter como el nombre de un proveedor o una nota,
que es mas apropiado un char o un varchar ? En realidad cuando es mejor usar
un varchar que un char ?



Depende, si los valores a guardar son variables, es decir difieren en
longitud el uno del otro, o si la mayoria de las filas a insertar tendrian
valor NULL en esa columna, entonces es mejor usar VARCHAR para ahorrar
espacio en disco. Si la longitud de los valores sera aproximadamente la misma
y la posibilidad de contener valor NULL es minima, entonces CHAR sera
preferible.

Si tu aplicacion trabajara con caracteres multi lenguaje, entonces considera
la posibilidad de usar NCHAR / NVARCHAR. Si la longitud o tamaño de la nota
puede ser mayor a 8000 caracteres, entonces tendras que usar TEXT / NTEXT.


AMB

"Leopoldo Ramos" wrote:

Saludos. Estoy comenzando en esto de sql server para ello haciendo un
sistemita sencillo.
1) Quiero saber para digamos almacenar el valor total de una factura con dos
decimales (rango de 1 a 9999999.99), cual es el tipo mas recomendado (money,
numeric, etc) ?

2) Para el caso de datos caracter como el nombre de un proveedor o una nota,
que es mas apropiado un char o un varchar ? En realidad cuando es mejor usar
un varchar que un char ?


Gracias
Leopoldo
Puerto Rico




Preguntas similares