HDP115

Ejemplo de restricción UNSIGNED

La restricción UNSIGNED se utiliza en MySQL para definir que una columna numérica no puede contener valores negativos.

CE

Cristian Escalante

Última actualización: 8 de mayo de 2025

sql
programación
desarrollo

Ejemplos de restricción UNSIGNED

La restricción UNSIGNED se utiliza en MySQL para definir que una columna numérica no puede contener valores negativos. Esto es útil cuando sabemos que los valores de una columna siempre serán positivos, como en el caso de cantidades o conteos.

Solo se puede aplicar a columnas numéricas, como INT, FLOAT, DECIMAL, etc. Por ejemplo, si tenemos una tabla de productos y queremos asegurarnos de que la cantidad en stock no sea negativa, podemos usar la restricción UNSIGNED de la siguiente manera:

-- ejemplo de restricción UNSIGNED en MySQL
CREATE TABLE productos (
    id INT AUTO_INCREMENT PRIMARY KEY,
    nombre VARCHAR(100) NOT NULL,
    cantidad INT UNSIGNED NOT NULL
);

Si intentamos insertar un registro con una cantidad negativa, obtendremos un error:

INSERT INTO productos (nombre, cantidad)
VALUES ('Producto A', -10);
-- Error: violación de restricción UNSIGNED

Si hemos creado la tabla sin la restricción UNSIGNED, podemos modificarla posteriormente para agregar la restricción:

CREATE TABLE productos (
    id INT AUTO_INCREMENT PRIMARY KEY,
    nombre VARCHAR(100) NOT NULL,
    cantidad INT NOT NULL
);

ALTER TABLE productos
MODIFY COLUMN cantidad INT UNSIGNED NOT NULL;

-- Ahora, si intentamos insertar un registro con una cantidad negativa, obtendremos un error:
INSERT INTO productos (nombre, cantidad)
VALUES ('Producto A', -10);
-- Error: violación de restricción UNSIGNED

Unsigned en datos enteros

La restricción UNSIGNED se aplica a columnas de tipo entero, como TINYINT, SMALLINT, MEDIUMINT, INT y BIGINT. Por ejemplo:

CREATE TABLE enteros (
    id INT AUTO_INCREMENT PRIMARY KEY,
    valor TINYINT UNSIGNED NOT NULL
);

Unsigned en datos de punto flotante

La restricción UNSIGNED también se puede aplicar a columnas de tipo de punto flotante, como FLOAT y DOUBLE. Por ejemplo:

CREATE TABLE flotantes (
    id INT AUTO_INCREMENT PRIMARY KEY,
    valor FLOAT UNSIGNED NOT NULL
);

Unsigned en datos decimales

La restricción UNSIGNED se puede aplicar a columnas de tipo decimal, como DECIMAL. Por ejemplo:

CREATE TABLE decimales (
    id INT AUTO_INCREMENT PRIMARY KEY,
    valor DECIMAL(10, 2) UNSIGNED NOT NULL
);
Ejemplo de restricción AUTOINCREMENT
La restricción AUTOINCREMENT genera valores secuenciales úni...
Ejemplo de restricción CHARACTER SET
La restricción CHARACTER SET define los conjuntos de caracte...

Conceptos Básicos de HTML

Aprende los conceptos básicos de HTML

Conceptos Básicos de CSS

Aprende los conceptos básicos de CSS

Conceptos Básicos de JavaScript

Aprende los conceptos básicos de JavaScript

Conceptos Básicos de GIT

Aprende los conceptos básicos de GIT

Conceptos Básicos de Python

Aprende los conceptos básicos de Python

Conceptos Básicos de UML

Aprende los conceptos básicos de UML

Refuerzo Academico de Herramientas de Productividad 2025