Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
SQL Nivel 113/8/2020 Guillermo Villanueva - guillermovil@Gmail.com 1 SQL Nivel 1 Insert Update Delete Truncate 13/8/2020 Guillermo Villanueva - guillermovil@Gmail.com Agenda clase 7 2 SQL Nivel 1 La sentencia insert permite insertar filas en tablas de la base de datos, el motor de bases de datos validará los datos teniendo en cuenta: • Tipo de datos • Restricción de nulidad • Unicidad en claves primarias o índices únicos • Restricciones de integridad referencial 13/8/2020 Guillermo Villanueva - guillermovil@Gmail.com Insert 3 SQL Nivel 1 Sintáxis 1 INSERT INTO <tabla> [( lista de columnas )] VALUES (lista de valores) [,(lista de valores)] [...] [RETURNING *|expr] Sintáxis 2 INSERT INTO <tabla> [( lista de columnas )] <consulta select compatible> 13/8/2020 Guillermo Villanueva - guillermovil@Gmail.com Insert – sintaxis 4 SQL Nivel 1 insert into clientes(cli_id, cli_documento, cli_apellido, cli_nombre) values (default, '45111222', 'Perez', 'Juan'), (default, '45111223', 'Lopez', 'Ana'); insert into clientes(cli_documento, cli_apellido, cli_nombre , cli_telefono) values ('45111225', 'Villa', 'Pedro','3874022345'), ('45111229', 'Alonso', 'Silvia', null) returning *; insert into clientes2 select * from clientes where cli_telefono is not null; 13/8/2020 Guillermo Villanueva - guillermovil@Gmail.com Insert en acción 5 SQL Nivel 1 La sentencia UPDATE cambia los valores de las columnas especificadas en todas las filas que satisfacen la condición. Solo las columnas a ser modificadas necesitan mencionarse en la clausula SET, las columnas no especificadas mantienen su valor previo. Al igual que en la sentencia INSERT , ante un UPDATE el motor chequea que se cumplan todas las reglas mencionadas anteriormente. 13/8/2020 Guillermo Villanueva - guillermovil@Gmail.com Update 6 SQL Nivel 1 UPDATE tabla SET columna = { expr | DEFAULT } [, ...] [ WHERE cond ] [ RETURNING * | expr ] 13/8/2020 Guillermo Villanueva - guillermovil@Gmail.com Update – sintaxis 7 SQL Nivel 1 update clientes set cli_apellido = 'Pérez', cli_email = 'perezj@gmail.com' where cli_documento = '45111222'; update productos set pro_precio = pro_precio * 1.10; Cuidado!: las sentencias update sin where son extremadamente peligrosas porque afectan a todas las filas de la tabla 13/8/2020 Guillermo Villanueva - guillermovil@Gmail.com Update en acción 8 SQL Nivel 1 La sentencia DELETE borra todas las filas de una tabla que satisfacen la condición de la clausula WHERE. Si no hay clausula WHERE se borran todas las filas del tabla. EL motor de bases de datos realizará los chequeos necesarios para que se mantenga intacta la integridad referencial. 13/8/2020 Guillermo Villanueva - guillermovil@Gmail.com Delete 9 Si realmente se desean eliminar todas las filas de una tabla es conveniente utilizar la sentencia TRUNCATE SQL Nivel 1 DELETE FROM tabla [ WHERE condition ] [ RETURNING * | expr ] 13/8/2020 Guillermo Villanueva - guillermovil@Gmail.com Delete – sintaxis 10 SQL Nivel 1 delete from clientes where cli_documento = '45111222' returning *; delete from productos ; Cuidado!: las sentencias delete sin where son extremadamente peligrosas porque borran todas las filas de la tabla 13/8/2020 Guillermo Villanueva - guillermovil@Gmail.com Delete en acción 11 SQL Nivel 1 • Insertar 3 clientes • Insertar 3 productos • Insertar las filas necesarias para reflejar 2 ventas • Crear una tabla de respaldo de clientes e insertar todos los clientes actuales • Actualizar al 30% todos los productos cuyo precio sea menor que 100 • Borrar la última venta completa • Borrar todos los registros de la tabla de respaldo 13/8/2020 Guillermo Villanueva - guillermovil@Gmail.com Práctica 12 SQL Nivel 113/8/2020 Guillermo Villanueva - guillermovil@Gmail.com 13 MUCHAS GRACIAS
Compartir