Sentencia INSERT en SQL y operaciones relacionadas
Clasificado en Informática
Escrito el en español con un tamaño de 3,86 KB
La sentencia INSERT
La sentencia INSERT: de SQL permite insertar una fila en una tabla, es decir,
añadir un registro de información a una tabla.
INSERT [INTO] nombre_tabla [(noinbre_coluinna, . . . )]
VALUES ({expr | DEFAULT},...)
nombre.tabla es el nombre de la tabla donde se quiere insertar la fila. Después del nombre de la tabla, de forma optativa, se pueden indicar las columnas donde se va a insertar la información. Si se especifican las columnas, la lista de valores (VALUES) a insertar se asociará correlativamente con los valores a las columnas indicadas.
Sentencia insert extendida:
insert into vehiculos (Matricula,Modelo,Marca)
VALUES ('4123 BFH','Ibiza','Seat'),
('1314 FHD','Toledo','Seat'),
('3923 GJS','León','Seat');
Insert y select:
INSERT
[INTO] noinbre_tabla [(nombre_columna,.,
SELECT ... FROM ...
INSERT INTO BackupVehiculos
SELECT * FROM vehiculos;
Update:
UPDATE
nombre_tabla
SET nombre_coll=exprl [, nombre_col2=expr2 ] ...
[WHERE filtro]
UPDATE jugadores SET Nombre_equipo='Knicks'
WHERE Nombre='Pau Gasol';
UPDATE jugadores SET Nombre_equipo='Knicks', Peso=210
WHERE Nombre='Pau Gasol';
UPDATE jugadores SET Peso=Peso*0.4535;
Delete:
DELETE FROM
nombre_tabla
[WHERE filtro]
DELETE FROM jugadores WHERE Nombre='Jorge Garbajosa';
DELETE FROM jugadores;
Update y delete:
DELETE FROM Empleados
WHERE CodigoEmpleado Not in
(SELECT CodigoEmpleadoRepVentas
FROM Clientes)
AND Puesto='Representante Ventas';
Borrado y modificación de registros con relaciones
Hay que tener en cuenta que no siempre se pueden borrar o modificar datos:
En este punto, hay que recordar las cláusulas REFERENCES de la sentencia
CREATE TABLE para crear las relaciones de clave foránea-clave primaria de alguna columna de una tabla:
definición_referencia:
REFERENCES nombre_tabla[(nombre_coluinna,. ..)]
[ON DELETE opción_referencia]
[ON UPDATE opción_referencia]
Las cláusulas ON DELETE y ON UPDATE personalizan el comportamiento de estos dos casos (no se podrá borrar ni actualizar)
Sin embargo, si la creación de la relación estuviese personalizada con las opciones ON UPDATE CASCADE y ON DELETE CASCADE (se borran y se actualizan los datos en cascada)
Transacciones
Un SGBD actualiza múltiples datos a través de una transacción. Una transacción es un conjuntode sentencias SQL que se tratan como una solainstrucción (atómica). Una transacción puede ser confirmada (commit), si todas las operaciones individua les se ejecutaron correctamente, o, abortada (rollback) a la mitad de su ejecución si hubo algún problema. Trabajar con transacciones puede ser esencial para mantener la integridad de los datos. La transacción garantiza la atomicidad de la operación: O se hacen todas las operaciones, o no se hace ninguna.