¿Qué significa "sin firmar" en MySQL y cuándo usarlo?

Resuelto HELP asked hace 13 años • 2 respuestas

¿Qué significa "sin firmar" en MySQL y cuándo debo usarlo?

HELP avatar Oct 09 '10 11:10 HELP
Aceptado

MySQL dice:

Todos los tipos de enteros pueden tener un atributo opcional (no estándar) SIN FIRMAR. El tipo sin signo se puede utilizar para permitir solo números no negativos en una columna o cuando necesite un rango numérico superior mayor para la columna. Por ejemplo, si una columna INT no está firmada, el tamaño del rango de la columna es el mismo pero sus puntos finales cambian de -2147483648 y 2147483647 a 0 y 4294967295.

¿Cuándo lo uso?

Hágase esta pregunta: ¿ Este campo alguna vez contendrá un valor negativo ?
Si la respuesta es no, entonces desea un UNSIGNEDtipo de datos.

Un error común es usar una clave principal que es un incremento automático INTque comienza en cero , pero el tipo es SIGNED, en ese caso nunca tocará ninguno de los números negativos y estará reduciendo el rango de posibles identificaciones a la mitad.

codaddict avatar Oct 09 '2010 04:10 codaddict

¿Qué significa "sin firmar" en MySQL?

En la creación de esquemas (diseño de bases de datos), un unsignednúmero entero es un número entero que solo puede contener un valor positivo (no negativo).

En el contexto de MySQL, el unsigned método utilizado para especificar esa columna sólo debe contener un valor positivo.

¿Cuándo debo usarlo?

Es una buena práctica en la creación de esquemas asignar las columnas que contienen una clave externa (como identificación) al unsignedmétodo para asegurarse de que esa columna solo contenga valores positivos y evitar errores y comportamientos inesperados en las consultas que usan esa columna.

jhon26 avatar Mar 29 '2023 08:03 jhon26