Campos Unsigned

01/06/2004 - 11:25 por Federico F. | Informe spam
Hola, quería saber si se podría implementar de algun modo
valores sin signo (UNSIGNED) para campos identity, ya que
me limita mucho el tener el signo (la mitad, nada menos)


alguna solución?

Gracias!

Preguntas similare

Leer las respuestas

#1 Carlos Sacristan
01/06/2004 - 11:38 | Informe spam
Pues no, no se puede. Todos los tipos de datos numéricos (menos TINYINT)
son con signo, pero si no te fuera suficiente con los valores que acepta el
tipo de dato INT (más de 2.100 millones), podrías usar BIGINT.

Si aún así no te valiera, me dices qué datos estás almacenando en esa
tabla que necesite más valores. Más que nada por curiosidad ;-)


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL


"Federico F." escribió en el mensaje
news:1c3b01c447ba$5a171d90$
Hola, quería saber si se podría implementar de algun modo
valores sin signo (UNSIGNED) para campos identity, ya que
me limita mucho el tener el signo (la mitad, nada menos)


alguna solución?

Gracias!
Respuesta Responder a este mensaje
#2 Federico F.
01/06/2004 - 12:27 | Informe spam
Pues si, me valdría, la cosa estaba en los campos smallint,
que me venían muy bien con 65000 pero con 32000 ya no me
vienen tan bien, y tener que dimensionar a int solo para
guardar 5000 registros pues me parece excesivo, ya que se
desaprovecha mucho la tabla, no se si empezar por numeros
negativos, pero sería bastante engorroso de manejar

gracias por tu contestación


Pues no, no se puede. Todos los tipos de datos


numéricos (menos TINYINT)
son con signo, pero si no te fuera suficiente con los


valores que acepta el
tipo de dato INT (más de 2.100 millones), podrías usar BIGINT.

Si aún así no te valiera, me dices qué datos estás


almacenando en esa
tabla que necesite más valores. Más que nada por


curiosidad ;-)


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL


"Federico F."


escribió en el mensaje
news:1c3b01c447ba$5a171d90$
Hola, quería saber si se podría implementar de algun modo
valores sin signo (UNSIGNED) para campos identity, ya que
me limita mucho el tener el signo (la mitad, nada menos)


alguna solución?

Gracias!


.

Respuesta Responder a este mensaje
#3 Javier Loria
01/06/2004 - 13:58 | Informe spam
Hola Federico:
En el mundo con estaciones 512 Mb RAM y Discos Duros de 120 Gb, una fila
con 2 bytes de mas y 5000 filas consume 10 Kb!!!.
Si realmente quieres ahorar el espacio, mata el identity y usa la llave
primaria natural !!!.
Saludos,

Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.
Federico F. escribio:
Pues si, me valdría, la cosa estaba en los campos smallint,
que me venían muy bien con 65000 pero con 32000 ya no me
vienen tan bien, y tener que dimensionar a int solo para
guardar 5000 registros pues me parece excesivo, ya que se
desaprovecha mucho la tabla, no se si empezar por numeros
negativos, pero sería bastante engorroso de manejar

gracias por tu contestación


Pues no, no se puede. Todos los tipos de datos


numéricos (menos TINYINT)
son con signo, pero si no te fuera suficiente con los


valores que acepta el
tipo de dato INT (más de 2.100 millones), podrías usar BIGINT.

Si aún así no te valiera, me dices qué datos estás almacenando en
esa tabla que necesite más valores. Más que nada por


curiosidad ;-)


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL


"Federico F."


escribió en el mensaje
news:1c3b01c447ba$5a171d90$
Hola, quería saber si se podría implementar de algun modo
valores sin signo (UNSIGNED) para campos identity, ya que
me limita mucho el tener el signo (la mitad, nada menos)


alguna solución?

Gracias!


.
Respuesta Responder a este mensaje
#4 Carlos Sacristan
01/06/2004 - 14:10 | Informe spam
Bueeeeeeeeeeeeeeeno, Javieeeeeeeeeer, tampoco te pongas así. Igual la
clave natural es eeeeeeeeesa o no tiene más remedio que usaaaaaaaarla :-D

Los cursores y las claves artificiales a tí te matan, eeeh? ;-)


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL


"Javier Loria" escribió en el mensaje
news:#UYrO$
Hola Federico:
En el mundo con estaciones 512 Mb RAM y Discos Duros de 120 Gb, una


fila
con 2 bytes de mas y 5000 filas consume 10 Kb!!!.
Si realmente quieres ahorar el espacio, mata el identity y usa la


llave
primaria natural !!!.
Saludos,

Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.
Federico F. escribio:
> Pues si, me valdría, la cosa estaba en los campos smallint,
> que me venían muy bien con 65000 pero con 32000 ya no me
> vienen tan bien, y tener que dimensionar a int solo para
> guardar 5000 registros pues me parece excesivo, ya que se
> desaprovecha mucho la tabla, no se si empezar por numeros
> negativos, pero sería bastante engorroso de manejar
>
> gracias por tu contestación
>
>>
>> Pues no, no se puede. Todos los tipos de datos
> numéricos (menos TINYINT)
>> son con signo, pero si no te fuera suficiente con los
> valores que acepta el
>> tipo de dato INT (más de 2.100 millones), podrías usar BIGINT.
>>
>> Si aún así no te valiera, me dices qué datos estás almacenando en
>> esa tabla que necesite más valores. Más que nada por
> curiosidad ;-)
>>
>>
>> Un saludo
>>
>> -
>> "Sólo sé que no sé nada. " (Sócrates)
>>
>> Por favor, responder únicamente al foro
>> Se agradece la inclusión de sentencias DDL
>>
>>
>> "Federico F."
> escribió en el mensaje
>> news:1c3b01c447ba$5a171d90$
>> Hola, quería saber si se podría implementar de algun modo
>> valores sin signo (UNSIGNED) para campos identity, ya que
>> me limita mucho el tener el signo (la mitad, nada menos)
>>
>>
>> alguna solución?
>>
>> Gracias!
>>
>>
>> .


Respuesta Responder a este mensaje
#5 Javier Loria
01/06/2004 - 14:19 | Informe spam
Hola Carlos:
Pues si bastante, pero en este caso si el campo es una llave natural no
puede ser identity!!!.
Los identities tienen ciertas caracteristicas (particularmente la falta
de soporte a transacciones) que los hacen poco apriados para uso de llaves
primarias naturales. No deben modelarse en mi opinion numeros de facturas,
recibos, etc, con identities.
Algunos incluso algunos autores opinan que un identity NUNCA PUEDE SER
LLAVE PRIMARIA, (por diseno no por limitacion del motor de la BD). A lo sumo
UNIQUE con indice y establecer la referencia como llave artificial.
Es posible que algun dia de estos MS mate a los identities (como mato
los variant de VB), y algunos se queden con todo el codigo dificil de migrar
:D
Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.
Carlos Sacristan <csacristan ARROBA mvps.org> escribio:
Bueeeeeeeeeeeeeeeno, Javieeeeeeeeeer, tampoco te pongas así.
Igual la clave natural es eeeeeeeeesa o no tiene más remedio que
usaaaaaaaarla :-D

Los cursores y las claves artificiales a tí te matan, eeeh? ;-)


Un saludo


"Javier Loria" escribió en el mensaje
news:#UYrO$
Hola Federico:
En el mundo con estaciones 512 Mb RAM y Discos Duros de 120 Gb,
una fila con 2 bytes de mas y 5000 filas consume 10 Kb!!!.
Si realmente quieres ahorar el espacio, mata el identity y usa
la llave primaria natural !!!.
Saludos,

Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.
Federico F. escribio:
Pues si, me valdría, la cosa estaba en los campos smallint,
que me venían muy bien con 65000 pero con 32000 ya no me
vienen tan bien, y tener que dimensionar a int solo para
guardar 5000 registros pues me parece excesivo, ya que se
desaprovecha mucho la tabla, no se si empezar por numeros
negativos, pero sería bastante engorroso de manejar

gracias por tu contestación


Pues no, no se puede. Todos los tipos de datos


numéricos (menos TINYINT)
son con signo, pero si no te fuera suficiente con los


valores que acepta el
tipo de dato INT (más de 2.100 millones), podrías usar BIGINT.

Si aún así no te valiera, me dices qué datos estás almacenando
en esa tabla que necesite más valores. Más que nada por


curiosidad ;-)


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL


"Federico F."


escribió en el mensaje
news:1c3b01c447ba$5a171d90$
Hola, quería saber si se podría implementar de algun modo
valores sin signo (UNSIGNED) para campos identity, ya que
me limita mucho el tener el signo (la mitad, nada menos)


alguna solución?

Gracias!


.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida