Actualizar registros de una tabla Oracle (Update)



Cuando se requiere realizar un cambio a un registro almacenado en una tabla, se utiliza el comando update.

UPDATE TABLE SET COLUMNA1 = VALOR1;

El comando update le indica al sistema que tabla va hacer actualizada, y que campos deben ser modificados con su respectivo nuevo valor, se pueden modificar una o varias columnas y los registros que sean necesarios según la condición (Where), para agregar varias columnas estas se separan por comas (Campo1, Campo2,…), en Oracle solo se puede actualizar una tabla por comando.

Ejemplo:

Se nos pide:

      1 - Modificar el país de todos los clientes, dejando el campo PAIS con valor nulo.

      2 - Modificar la CIUDAD, PAIS y EDAD del cliente  Mónica Rentería agregando como ciudad Londres, país Inglaterra y Edad 23.

Inicialmente la tabla de clientes se encuentra así.
NOMBRE
EDAD
PAIS
CIUDAD
María del Castillo
14
Colombia
Cali
Mónica Rentería
22
Colombia
San Andrés
Pedro Souchi
10
España
Cádiz
Marcela Álvarez
14
Colombia
Armenia

Solución:
      
      1 - UPDATE CLIENTE  SET PAIS = NULL;
NOMBRE
EDAD
PAIS
CIUDAD
María del Castillo
14

Cali
Mónica Rentería
22

San Andrés
Pedro Souchi
10

Cádiz
Marcela Álvarez
14

Armenia

      2 - UPDATE CLIENTE  SET PAIS = 'Inglaterra', CIUDAD = 'Londres', EDAD = 23 WHERE NOMBRE = 'Mónica Rentería';
NOMBRE
EDAD
PAIS
CIUDAD
María del Castillo
14

Cali
Mónica Rentería
23
Inglaterra
Londres
Pedro Souchi
10

Cádiz
Marcela Álvarez
14

Armenia

Eliminar registros de una tabla Oracle (Delete).



Para la acción de suprimir registros utilizamos el comando DELETE.

DELETE FROM TABLE;

Este comando le dice al sistema de gestión de base de datos en que tabla están los registros que serán eliminados, el comando también se puede ejecutar como “DELETE TABLE”, sin necesidad de usar la palabra reservada FROM. Si ejecutamos la sentencia “DELETE FROM CLIENTE;”  estaría bien si lo que se necesita es dejar sin registros la tabla, pero en muchos casos solo necesitamos suprimir algunos datos, entonces para eliminar solos los datos necesarios utilizamos la cláusula WHERE, por ejemplo se necesita eliminar a todos los clientes que sean menores de 15 años, la sentencia seria.

DELETE FROM CLIENTE WHERE EDAD <15;

Antes:
NOMBRE
EDAD
PAIS
CIUDAD
María del Castillo
14
Colombia
Cali
Mónica Rentería
22
Colombia
San Andrés
Pedro Souchi
10
España
Cádiz
Marcela Álvarez
14
Colombia
Armenia

Después:
NOMBRE
EDAD
PAIS
CIUDAD
Mónica Rentería
22
Colombia
San Andrés