SESION2 MYSQL
DATOS
Informatica
Docente:
Arturo Diaz Pulido
jdiazpulido@unitru.edu.pe
7mo. Ciclo
SESION II:
MODIFICACIÓN DEL CONTENIDO DE UNA BASE DE
DATOS
Objetivos:
Ingresos, modificaciones y eliminaciones de datos: INSERT, DELETE y UPDATE
Recordemos:
1. Sentencia INSERT
La sentencia INSERT se utiliza para añadir registros a las tablas de la base de datos. El
formato de lasentencia es:
INSERT INTO Nombre_tabla [(nombre_columna1, nombre_columna 2,
nombre_columna n..)] VALUES (expr1, expr2, expr n...)
Ejemplo:
INSERT
INTO
USUARIO
(COD_USUA,
NOM_USUA,
APEPATER_USUA,
APEMATER_USUA,
FEC_NAC_USUA,
FEC_REG_USUA,
TIPO_DOC_USUA,
NUM_DOC_USUA, COD_EST)
VALUES (‘U00001’, ’LUIS’, ’PEREZ’, ’PRADO’,
’25/02/1989’, ’02/01/2009’, ’DNI’, ’23453894’, ’ACTIVO’)
1.1.
Insertando un únicoregistro
INSERT INTO USUARIO (COD_USUA, NOM_USUA, APEPATER_USUA, APEMATER_USUA,
FEC_NAC_USUA, FEC_REG_USUA, TIPO_DOC_USUA) VALUES (‘U00001’, ’LUIS’, ’PEREZ’,
’PRADO’, ’25/02/1989’, ’02/01/2009’, ’DNI’)
1.2.
Insertar Múltiples Registros
Ejemplo: tabla USUARIOS
COD_USUA
NOM_USUA
APEPATER_USUA
APEMATER_USUA
FEC_NAC_USUA
FEC_REG_USUA
COD_EST
U00001
LUIS
PEREZ
PRADO
25/02/1939
01/01/1970ACTIVO
U0002
JUAN
MARTELL
TANTAS
12/01/1979
01/01/1970
ACTIVO
U0003
MIGUEL
PAEZ
CONNOR
12/108/1958
01/01/1980
INACTIVO
U0004
ANA
LOZA
LAOS
22/05/1945
01/01/1970
ACTIVO
U0005
CARLOS
ARIES
CERPA
12/01/1979
01/01/1980
INACTIVO
U0005
MARTHA
MARES
MARAVI
21/07/1977
01/01/1980
INACTIVO
U0006
MILAGROS
LLOSA
CORDOVA
05/02/1975
01/01/1970
ACTIVO
GRADOS
DELAGUILA
03/11/1988
01/01/1970
ACTIVO
U0007
LUISA
Actividad:
Trasladar todos los clientes de la tabla USUARIO, que tengan COD_EST=’ACTIVO’, a nuestra nueva
tabla EJEMPLO. La respuesta sería la siguiente:
Insert into ejemplo (cod_usua, nom_usua, apepater_usua, apemater_usua, fec_nac_usua,
fec_reg_usua, cod_est)
select cod_usua, nom_usua, apepater_usua, apemater_usua, fec_nac_usua, fec_reg_usua,cod_est from usuario
where cod_est=’activo’
Como se puede observar, es posible combinar el comando INSERT con las consultas de Selección
para agregar datos específicos sin tener la necesidad de realizarlo uno por uno.
2. Sentencia UPDATE
UPDATE Nombre_tabla
SET nombre_columna1 = expr1, nombre_columna2 = expr2, …... *WHERE { condición }]
-
Ejemplo 1: Actualizar un precio único para todos losDEPARTAMENTOS. No se utiliza la
cláusula WHERE.
UPDATE DEPARTAMENTOS
SET PRECIO_ALQxMES_DEP = 1000
-
Ejemplo 2: subir el precio de alquiler por mes de un departamento de la tabla de
DEPARTAMENTOS en un 10% de aquellos que tengan más de 100 metros de área construida:
UPDATE DEPARTAMENTOS
SET PRECIO_ALQxMES_DEP = PRECIO_ALQxMES_DEP * 1.1
WHERE AREA_TOTAL_DEP > 100
-
Ejemplo 3: fijar la fecha deregistro de un usuario (en la tabla USUARIO) de todos aquellos
usuarios que tengan la fecha de registro vacía (nula) a la fecha actual, se escribiría:
UPDATE USUARIO
SET FEC_REG_USUA = TODAY()
WHERE FEC_REG_USUA IS NULL
3. DELETE
DELETE FROM Nombre_Tabla [WHERE { condición }]
Ejemplo 1: borrar todos los registros de la tabla FAMILIARES cuyo grado de parentesco sea ‘TIA’.
DELETE FROM FAMILIARES WHEREGRADO_PARENTES_FAMI=”TIA”
Tipos de datos blob y text.
Los tipos "blob" o "text" son bloques de datos. Tienen una longitud de 65535 caracteres.
Un "blob" (Binary Large Object) puede almacenar un volumen variable de datos. La diferencia entre
"blob" y "text" es que "text" diferencia mayúsculas y minúsculas y "blob" no; esto es porque "text"
almacena cadenas de caracteres no binarias (caracteres), encambio "blob" contiene cadenas de
caracteres binarias (de bytes).
No permiten valores "default".
Existen subtipos:
- tinyblob o tinytext: longitud máxima de 255 caracteres.
- mediumblob o mediumtext: longitud de 16777215 caracteres.
- longblob o longtext: longitud para 4294967295 caracteres.
Se utiliza este tipo de datos cuando se necesita almacenar imágenes, sonidos o textos muy largos.
Un...
Regístrate para leer el documento completo.