Oracle/PLSQL: mensaje de error ORA-01407

Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.

Oracle/PLSQL: mensaje de error ORA-01407

Aprenda por qué y cómo resolver los mensajes de error ORA-01407 en Oracle.

describir

Cuando encuentra un error ORA-01407, aparece el siguiente mensaje de error:

  • ORA-01407: no se puede actualizar (“SCHEMA”.”TABLE_NAME”.”COLUMN_NAME”) a NULL

razón

Intentó actualizar una columna con valores NULL, pero la columna no acepta valores NULL.

resolver

Las opciones para resolver este error de Oracle incluyen:

Opción 1

Corrija su instrucción UPDATE para que las columnas con valores NULL no se actualicen cuando la columna se define como NOT NULL.

Por ejemplo, si tiene una tabla llamada proveedores, definida de la siguiente manera:

CREATE TABLE suppliers
( supplier_id number not null,
  supplier_name varchar2(50) not null 
);

e intenta ejecutar la siguiente instrucción UPDATE:

UPDATE suppliers
SET supplier_name = null
WHERE supplier_id = 10023;

Recibirá el siguiente mensaje de error:

Ha definido la columna Nombre del proveedor como un campo NO NULO. Sin embargo, intenta actualizar el campo con un valor NULL.

Puede corregir este error con la siguiente instrucción UPDATE:

UPDATE suppliers
SET supplier_name="IBM"
WHERE supplier_id = 10023;

Ahora inserta valores NOT NULL en la columna Nombre del proveedor.

(Visited 4 times, 1 visits today)