DELETE

Anuncio
DELETE
Crea una consulta de eliminación que elimina los registros de una o más de las
tablas listadas en la cláusula FROM que satisfagan la cláusula WHERE. Esta
consulta elimina los registros completos, no es posible eliminar el contenido de
algún campo en concreto. Su sintaxis es:
DELETE FROM Tabla WHERE criterio
DELETE es especialmente útil cuando se desea eliminar varios registros. En una
instrucción DELETE con múltiples tablas, debe incluir el nombre de tabla (Tabla.*).
Si especifica más de una tabla desde la que eliminar registros, todas deben ser
tablas de muchos a uno. Si desea eliminar todos los registros de una tabla,
eliminar la propia tabla es más eficiente que ejecutar una consulta de borrado.
Se puede utilizar DELETE para eliminar registros de una única tabla o desde
varios lados de una relación uno a muchos. Las operaciones de eliminación en
cascada en una consulta únicamente eliminan desde varios lados de una relación.
Por ejemplo, en la relación entre las tablas Clientes y Pedidos, la tabla Pedidos es
la parte de muchos por lo que las operaciones en cascada solo afectaran a la tabla
Pedidos. Una consulta de borrado elimina los registros completos, no únicamente
los datos en campos específicos. Si desea eliminar valores en un campo
especificado, crear una consulta de actualización que cambie los valores a Null.
Una vez que se han eliminado los registros utilizando una consulta de
borrado, no puede deshacer la operación. Si desea saber qué registros se
eliminarán, primero examine los resultados de una consulta de selección que
utilice el mismo criterio y después ejecute la consulta de borrado. Mantenga copias
de seguridad de sus datos en todo momento. Si elimina los registros equivocados
podrá recuperarlos desde las copias de seguridad.
Recomendable realizar un query de búsqueda para estar seguros que borramos.
DELETE * FROM Empleados WHERE Cargo = 'Vendedor';
DELETE FROM empleado WHERE (nombre=’Vizcarra’)
DELETE FROM empleado WHERE (numerod=1)
No usar DELETE FROM nombre de la tabla
Borra toda la información de la tabla completa.
UPDATE
Crea una consulta de actualización que cambia los valores de los campos de una
tabla especificada basándose en un criterio específico. Su sintaxis es:
UPDATE Tabla SET Campo1=Valor1, Campo2=Valor2, ... CampoN=ValorN
WHERE Criterio;
UPDATE es especialmente útil cuando se desea cambiar un gran número de
registros o cuando éstos se encuentran en múltiples tablas. Puede cambiar varios
campos a la vez.
UPDATE no genera ningún resultado. Para saber qué registros se van a cambiar,
hay que examinar primero el resultado de una consulta de selección que utilice el
mismo criterio y después ejecutar la consulta de actualización.
** UPDATE Empleado SET salario = ‘50’ WHERE salario = ’42.50’
Si en una consulta de actualización suprimimos la cláusula WHERE todos los
registros de la tabla señalada serán actualizados.
Ejemplo:
** UPDATE Empleado SET Salario = Salario * 1.1
Ejercicios
• De al tabla proyecto cambiar el lugar y el numero de del departamento ahora el
lugar será calexico y el numero de departamento será el 5 del numero de
proyecto que actualmente es 10.
• En la tabla trabaja_en sumarle 5 horas a todos los empleado
• Probar la siguiente instrucción y verifique que pasa
Update proyecto
Set salario=salario*1.03
Where nd in (select numerod
From departamento
where nombred=´investigacion´);
• Borrar a todos aquellos dependientes cuyo parentesco sea esposa.
• Borrar a todo empleado cuyo supervisor sea nulo.
• Borrar al empelado cuyo numero de seguro social sea 333445555
Crear las siguientes tablas el nombre de la base de datos a z_XXXXX donde
XXXXX son los últimos 5 dígitos de su matricula
CREATE TABLE padre (id INT NOT NULL,nombre varchar(30),
PRIMARY KEY (id)
) TYPE=INNODB;
CREATE TABLE child (id INT, parent_id INT, nombrehijo varchar(50),
INDEX par_ind (parent_id),
FOREIGN KEY (parent_id) REFERENCES padre(id)
ON DELETE CASCADE
) TYPE=INNODB;
Dar de alta en la tabla padre
Id
nombre
1
Luís
2
Ana
3
José
id
10
11
12
13
14
parentid
1
1
4
2
3
Borra de la tabla padre el padre que tienen el numero 1
Verificar ambas tablas para ver que se borro.
Borrar de la tabla child el id 14
Verifique que se borro de ambas tablas.
nombrehijo
pedro
Luis
Maria José
Inés
Carolina
Descargar