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;