El documento describe la implementación de una base de datos en MySQL, incluyendo la creación de tablas con claves primarias y foráneas, y el uso de los comandos DML (Data Manipulation Language) como SELECT, INSERT, UPDATE y DELETE para manipular datos en las tablas. Se proveen ejemplos de sintaxis y uso de cada comando DML.
1. Base de datos (MySQL) Implementación de base de datos en MySQL, DML (Lenguaje de manipulación de datos) Ing. Linda Masias Morales
2. FOREIGN KEY CREATE TABLE product ( category INT NOT NULL, id INT NOT NULL, price DECIMAL, PRIMARY KEY(category, id) ) ENGINE=INNODB; CREATE TABLE customer ( id INT NOT NULL, PRIMARY KEY (id) )ENGINE=INNODB;
3. FOREIGN KEY CREATE TABLE product_order ( no INT NOT NULL AUTO_INCREMENT, product_category INT NOT NULL, product_id INT NOT NULL, customer_id INT NOT NULL, PRIMARY KEY(no), INDEX (product_category, product_id), FOREIGN KEY (product_category, product_id) REFERENCES product(category, id) ON UPDATE CASCADE ON DELETE RESTRICT, INDEX (customer_id), FOREIGN KEY (customer_id) REFERENCES customer(id) ) ENGINE=INNODB;
4. Implementación de base de datos en MySQL, DML Select-> Permite hacer consultas en la BD, obteniendo una nueva “tabla” con los resultados de la consulta Insert-> Permite añadir registros en la BD (filas de una tabla) Update-> Permite modificar registros en la BD (filas de una tabla) Delete-> Permite borrar registros en la BD (filas de una tabla)
5. Seleccionardatos Utilizaremosuna tabla noticias con cinco campos: Un identificador único de la noticia, el título de la noticia, el texto de la noticia, la categoría de la Noticia la fecha de publicación de la noticia.
7. Insertardatos Ejemplo: Inserta una noticia con los valores indicados. INSERT INTO noticias ( id, titulo, texto, categoria, fecha ) VALUES ( 37, ‘Nueva promoción en Nervión’, ‘145 viviendas de lujo en urbanización ajardinada situadas en un entorno privilegiado’, ‘promociones’, CURDATE()) , ( 38, ‘Nueva promoción en Nervión’, ‘145 viviendas de lujo en urbanización ajardinada situadas en un entorno privilegiado’, ‘promociones’, CURDATE()) ;
8. Seleccionardatos Sintaxis: SELECT expresión FROM tabla [WHERE condición] [ORDER BY {unsigned_integer | col_name | formula} [ASC | DESC] ,...] [LIMIT [offset,] row_count | row_count OFFSET offset]
9. Seleccionardatos Ejemplo: Obtiene las noticias del día con un tope máximo de 10, ordenadas de la más reciente a la más antigua SELECT * from noticias WHERE id=37 SELECT * from noticias WHERE categoria =‘categoria’
10. Actualizardatos Sintaxis: UPDATE nombre_tabla SET nombre_columna1=expr1 [, nombre_columna2=expr2 ...] [WHERE condición] [ORDER BY ...] [LIMIT row_count]
11. Actualizardatos Ejemplo: Modifica la categoría de la noticia con id=37 de la tabla. UPDATE noticias SET categoria = “ofertas” WHERE id=38;
12. Eliminardatos Sintaxis: DELETE FROM nombre_tabla [WHERE condición] [ORDER BY ...] [LIMIT row_count]
13. Eliminardatos Ejemplo: Borra las noticias con más de 10 días de antigüedad. DELETE FROM noticias WHERE fecha < CURDATE()-10;