Sei sulla pagina 1di 11

CONSULTA DE ACTUALIZACIN: UPDATE

AUTOR Flix Antonio Cspedes Giraldo

UNIVERSIDAD DE MANIZALES FACULTAD DE INGENIERA PROGRAMA INGENIERA DE SISTEMAS Y TELECOMUNICACIONES MANIZALES, 26 ENERO DE 2011

CONSULTA DE ACTUALIZACIN: UPDATE

DEFINICIN

Crea una consulta de actualizacin que cambia los valores de los campos de una tabla especificada basndose en un criterio especfico. Su sintaxis es:
UPDATE Tabla SET Campo1=Valor1, Campo2=Valor2, ... CampoN=ValorN WHERE Criterio; La tabla destino a actualizar se indica despus la sentencia UPDATE. La clusula WHERE selecciona las filas de la tabla a modificar. La clusula SET especifica que columnas se van a actualizar y calcula los nuevos valores.
CONSULTA DE ACTUALIZACIN: UPDATE FLIX ANTONIO CSPEDES GIRALDO BASES DE DATOS II MANIZALES, 26 ENERO DE 2011

CONSULTA DE ACTUALIZACIN: UPDATE

DIAGRAMA SINTCTICO DE LA SENTENCIA UPDATE

CONSULTA DE ACTUALIZACIN: UPDATE FLIX ANTONIO CSPEDES GIRALDO BASES DE DATOS II MANIZALES, 26 ENERO DE 2011

CONSULTA DE ACTUALIZACIN: UPDATE

ACTUALIZACIN DE VARIOS REGISTROS

UPDATE es especialmente til cuando se desea cambiar un gran nmero de registros o cuando stos se encuentran en mltiples tablas. Puede cambiar varios campos a la vez. El ejemplo siguiente incrementa los valores Cantidad pedidos en un 10 por ciento y los valores Transporte en un 3 por ciento para aquellos que se hayan enviado al Reino Unido.:
UPDATE Pedidos SET Pedido = Pedidos * 1.1, Transporte = Transporte * 1.03 WHERE PaisEnvo = 'ES';

CONSULTA DE ACTUALIZACIN: UPDATE FLIX ANTONIO CSPEDES GIRALDO BASES DE DATOS II MANIZALES, 26 ENERO DE 2011

CONSULTA DE ACTUALIZACIN: UPDATE

ACTUALIZACIN DE VARIOS REGISTROS

UPDATE no genera ningn resultado. Para saber qu registros se van a cambiar, hay que examinar primero el resultado de una consulta de seleccin que utilice el mismo criterio y despus ejecutar la consulta de actualizacin. UPDATE Empleados SET Grado = 5 WHERE Grado = 2;
UPDATE Productos SET Precio = Precio * 1.1 WHERE Proveedor = 8 AND Familia = 3;

CONSULTA DE ACTUALIZACIN: UPDATE FLIX ANTONIO CSPEDES GIRALDO BASES DE DATOS II MANIZALES, 26 ENERO DE 2011

CONSULTA DE ACTUALIZACIN: UPDATE

ACTUALIZACIN DE VARIOS REGISTROS

Asignar una cuota de $30000 a los vendedores que no tienen asignada una cuota:
UPDATE Repventas SET Cuota=30000 WHERE Cuota IS NULL;

CONSULTA DE ACTUALIZACIN: UPDATE FLIX ANTONIO CSPEDES GIRALDO BASES DE DATOS II MANIZALES, 26 ENERO DE 2011

CONSULTA DE ACTUALIZACIN: UPDATE

ACTUALIZACIN DE TODOS LOS REGISTROS

Si en una consulta de actualizacin suprimimos la clusula WHERE todos los registros de la tabla sealada sern actualizados.
UPDATE Empleados SET Salario = Salario * 1.1;

CONSULTA DE ACTUALIZACIN: UPDATE FLIX ANTONIO CSPEDES GIRALDO BASES DE DATOS II MANIZALES, 26 ENERO DE 2011

CONSULTA DE ACTUALIZACIN: UPDATE

UPDATE CON CONSULTA

La sentencia UPDATE al igual que la DELETE se puede utilizar subconsultas, para seleccionar filas a actualizar en base a informacin contenida en otras tablas.

CONSULTA DE ACTUALIZACIN: UPDATE FLIX ANTONIO CSPEDES GIRALDO BASES DE DATOS II MANIZALES, 26 ENERO DE 2011

CONSULTA DE ACTUALIZACIN: UPDATE

EJEMPLOS

Elevar en $5000 el limite de crdito de cualquier cliente que haya remitido una orden de mas de $25000:
UPDATE Clientes SET Limite_credito = Limite_credito + 5000 WHERE Num_clie IN (SELECT DISTINCT Clie FROM Pedidos WHERE Importe > 25000);

CONSULTA DE ACTUALIZACIN: UPDATE FLIX ANTONIO CSPEDES GIRALDO BASES DE DATOS II MANIZALES, 26 ENERO DE 2011

CONSULTA DE ACTUALIZACIN: UPDATE

EJEMPLOS

Reasignar todos los clientes atendidos por vendedores cuyas ventas son menores al 80 por 100 de sus cuotas:
UPDATE Clientes SET Rep_clie = 105 WHERE Rep_clie IN (SELECT Num_empl FROM Repventas WHERE Ventas < (.8*Cuota);

CONSULTA DE ACTUALIZACIN: UPDATE FLIX ANTONIO CSPEDES GIRALDO BASES DE DATOS II MANIZALES, 26 ENERO DE 2011

BIBLIOGRAFA

Consultas de Accin (INSERT INTO, UPDATE, DELETE). Disponibilidad y acceso: http://basededatos.umh.es/ Ttulo: Aplique SQL Autor: Groff, James R. Editor: mcgraw-Hill / Interamericana de Espaa, sa Ao: 1990 ISBN: 84-7615-571-9

CONSULTA DE ACTUALIZACIN: UPDATE FLIX ANTONIO CSPEDES GIRALDO BASES DE DATOS II MANIZALES, 26 ENERO DE 2011

Potrebbero piacerti anche