Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ingeniería de Sistemas
OBJETIVOS ESPECIFICOS:
- Describir las tres sentencias SQL que se emplean para modificar los CONTENIDOS de
una base de datos.
CONTENIDO:
INSERT
DELETE
UPDATE
1.- INSERT
La sentencia de INSERT se utiliza para añadir registros a las tablas de la base de datos.
En un tratamiento simplificado, el comando INSERT toma la siguiente forma:
Sintaxis:
INSERT [INTO] Nombre_tabla (nombre_columna1,..) VALUES (exp,…)
Si solo se indica una lista parcial de columnas, el resto de las columnas recibirán un valor
nulo o el valor configurado por defecto para esa columna, en caso que lo tenga.
Además, no se deben asignar valores a los siguientes tipos de columnas, dado que SQL
Server genera automáticamente este valor.
Exp es una lista de expresiones o valores constantes, separados por comas, para dar valor
a los distintos campos del registro que se añadirá a la tabla. Las cadenas de caracteres
deberán estar encerradas entre comillas simples.
NOTA
Nota: Una vez creadas las tablas de la base de datos se debe cargar la data, para ello copiar la
base de datos ControlInventario de una tienda de abarrotes.
Cuando la lista de valores está incompleta es obligatorio establecer en que columna va cada valor
de la lista, por lo que la lista de columnas es obligatoria en la instrucción INSERT.
En este comando, los valores han sido definidos para la columnas Nombre, Representante Y
Direccion Sin embargo, no es necesario incluir la columna IdProveedor en el comando
INSERT, dado que la columna IdProveedor se define con la propiedad IDENTITY, porque los
valores para esa columna se generan automáticamente.
Cada sentencia INSERT añade un único registro a la tabla. En el ejemplo sólo se han
especificado 3 campos con sus respectivos valores, el resto de campos quedarán a nulo. Un
valor Nulo NULL no significa blancos o ceros sino simplemente que el campo nunca ha tenido
un valor.
La función getdate() entrega la fecha y hora del sistema. La puede utilizar para insertar la fecha
y hora del sistema en una columna de tipo fecha_hora.
VALUES(1, getdate())
Para enviar un dato fecha al servidor, la fecha se envía como una cadena con formato de fecha.
Por lo general, cuando la conexión es a un servidor SQL, no sabemos cuál es el formato de fecha
predeterminado que está utilizando el servidor, por lo que en ocasiones podemos tener
problemas con la manipulación de las fechas.
EJERCICIO:
1.4.1 Cree una tabla PRUEBA_FECHAS, con un campo Fecha de tipo Datetime que
no permita valores nulos, para hacer algunas pruebas con las fechas.
1.4.2 Ahora, inserte la fecha 20 de junio de 1998
go
1.4.3 Ahora inserte la fecha 3 de enero de 1979 (‘03/01/1979’) e inserte otro registro
con la fecha : (‘11/26/1980’)
Cuando se envía fechas al servidor se recomienda informar al servidor en qué formato se le está
enviando las fechas para que las lea correctamente
Además existe la posibilidad de agregar múltiples registros con ayuda del comando
SELECT .
Se puede usar una subconsulta SELECT dentro de un comando INSERT para agregar
datos a una tabla desde otra u otras tablas o vistas. Una subconsulta permite agregar más
de una fila a la vez.
Ejemplo :
2. UPDATE
Nombre_tabla es únicamente el nombre de la tabla donde se desea ingresar los nuevos datos
Nombre_columna es el nombre de columna o campo cuyo valor se desea cambiar. En una
misma sentencia UPDATE pueden actualizarse varios campos de cada registro de la tabla.
Expr es el nuevo valor que se desea asignar al campo que le precede. La expresión puede ser
un valor constante o una subconsulta. Las cadenas de caracteres deberán estar encerradas
entre comillas. Las subconsultas entre paréntesis.
SP_HELP PRODUCTO
select * from PROVEEDOR
select * from dbo.PRODUCTO
UPDATE PRODUCTO
SET PrecioProveedor = PrecioProveedor*1.5
WHERE IdCategoria = 1
Ejemplo 02:fijar el campo FechaEntrada de Orden (en la tabla ORDEN) de todos aquellas
órdenes realizadas que tienen vacía (NULL)a la fecha de hoy, se pondría:
UPDATE dbo.ORDEN
SET FechaEntrada = GETDATE()
WHERE FechaEntrada is NULL
1. Un ejemplo mas simple podría ser fijando un precio único para todos los productos, sin
utilizar la cláusula WHERE.
UPDATE PRODUCTO
SET PrecioProveedor = 200
3. DELETE
Cada sentencia DELETE borra los registros que cumplen la condición impuesta o todos si
no se indica la cláusula WHERE
EJEMPLO 1:El ejemplo siguiente elimina todos los registros de la tabla ORDEN
DELETE ORDEN
EJEMPLO 1:El ejemplo siguiente elimina todos los registros de la tabla CATEGORIA
DELETE CATEGORIA
4. TRUNCATE TABLE
EJEMPLO 01:
Elimine todos los registros de la tabla PRODUCTO
EJERCICIOS PROPUESTOS;
2. Realice una inserción de múltiples registros de la tabla producto, y que solo inserte los
registros a la nueva tabla creada, los productos cuyo PrecioProveedor sean mayores a 20
soles y menores que 30.
RE TIP_VEN = ‘1’
3. Actualice el campo FechaOrden y coloque la fecha actual del sistema de la tabla
ORDEN.
4. Crear 2 preguntas para realizar actualizaciones o cambios a una de las tablas de la bd.
6. Eliminar los registros con la descripción del campo ciudad igual a ‘Lima’ de la tabla
PROVEDOR.
PARA RECORDAR:
La sentencia INSERT de una fila añade una fila de datos a una tabla. Los valores para
la nueva fila se especifican en la sentencia como constantes.
La sentencia DELETE suprime cero o mas filas de datos de una tabla. Las filas a
suprimir son especificadas mediante una condición de búsqueda.
A diferencia de la sentencia SELECT, que puede operar sobre múltiples tablas, las
sentencias INSERT, DELETE y UPDATE funcionan solamente sobre una única tabla
cada vez.