bloque1:sql
Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
bloque1:sql [2021/11/05 10:37] – [Restricciones] fernando | bloque1:sql [2024/09/16 15:37] (actual) – editor externo 127.0.0.1 | ||
---|---|---|---|
Línea 249: | Línea 249: | ||
Para definir claves ajenas en MySQL habrá que tener en cuenta algunas consideraciones: | Para definir claves ajenas en MySQL habrá que tener en cuenta algunas consideraciones: | ||
+ | * Una columna clave ajena nunca podrá ser '' | ||
* La columna deberá ser del mismo tipo (y atributos) que la columna a la que se referencia. | * La columna deberá ser del mismo tipo (y atributos) que la columna a la que se referencia. | ||
* La columna deberá ser un índice. A partir de Mysql 8 y versiones compatibles de MAriaDB, se hace automáticamente. | * La columna deberá ser un índice. A partir de Mysql 8 y versiones compatibles de MAriaDB, se hace automáticamente. | ||
Línea 372: | Línea 373: | ||
pistas_cerradas (# | pistas_cerradas (# | ||
polideportivos (#id, nombre, direccion, ciudad, extension) | polideportivos (#id, nombre, direccion, ciudad, extension) | ||
+ | servicios_polideportivo(# | ||
reservas (#id, fecha_reserva, | reservas (#id, fecha_reserva, | ||
usuarios (#id, dni, nombre, apellidos, email, ciudad, fecha_nacimiento, | usuarios (#id, dni, nombre, apellidos, email, ciudad, fecha_nacimiento, | ||
Línea 512: | Línea 514: | ||
+ | ==== Generar Datos de Prueba ==== | ||
+ | Para poder trabajar con una base de datos es necesario que esta contenga datos, cuanta más cantidad mejor. Para ello necesitamos hacer muchas inserciones (INSERT INTO) en cada una de las tablas de la base de datos. | ||
+ | Existen programas que tienen sus propias bases de datos con datos de ejemplo y nos permiten generar datos adaptados a los campos de nuestras tablas. En la sección [[extra: | ||
+ | |||
+ | |||
+ | {{ vimeo> | ||
+ | > Generadores de datos | ||
===== Consulta de registros ===== | ===== Consulta de registros ===== | ||
Línea 766: | Línea 775: | ||
{{ youtube> | {{ youtube> | ||
\\ | \\ | ||
+ | |||
+ | === Operadores Aritméticos === | ||
+ | Por otra parte, también tenemos los operadores aritméticos habituales de los lenguajes de programación: | ||
+ | |||
+ | ^Operador^Operación^ | ||
+ | |+|Suma| | ||
+ | |-|Resta| | ||
+ | |*|Producto| | ||
+ | |/ | ||
+ | |div|División entera| | ||
+ | |mod ó %| Módulo: resto entero de división.| | ||
+ | |||
+ | <code sql> | ||
+ | -- Calcula el 10% de las ganancias por reservas del año pasado | ||
+ | SELECT (SUM(precio) * 0.1) AS ' | ||
+ | FROM reservas | ||
+ | WHERE YEAR(fecha_reserva) = YEAR(CURDATE()) - 1; | ||
+ | </ | ||
==== Funciones agregadas ==== | ==== Funciones agregadas ==== | ||
Línea 823: | Línea 850: | ||
-- Código y tipo de la pista más barata | -- Código y tipo de la pista más barata | ||
SELECT codigo, tipo | SELECT codigo, tipo | ||
- | FROM tipo | + | FROM pistas |
WHERE precio = (SELECT MIN(precio) FROM pistas); | WHERE precio = (SELECT MIN(precio) FROM pistas); | ||
Línea 1226: | Línea 1253: | ||
-> 1998 | -> 1998 | ||
</ | </ | ||
- | |||
- | ===== Cliente MySQL WorkBench ===== | ||
- | |||
- | ==== Mostrar Diagrama Relacional ==== | ||
- | Si queremos mostrar el diagrama relacional de una base de datos una vez que ya tenemos la estructura física de la misma creada (tablas), necesitamos realizar un proceso llamado " | ||
- | |||
- | - Pestaña // | ||
- | - Aceptar los parémetros de conextion | ||
- | - Seleccionar la bbdd de la que deseamos realizar la ingeniería inversa | ||
- | - Aceptar los siguiente pasos | ||
- | |||
- | ==== Exportar script de bbdd ==== | ||
- | Para exportar scripts con bases de datos //Mysql// o //Mariadb// incluyen la herramienta // | ||
- | |||
- | Desde la sección de sección // | ||
- | |||
- | En la siguiente ventana debemos indicar varias cosas: | ||
- | |||
- | {{ : | ||
- | |||
- | * //Dump Structura and Data//: exportar la estructura y los datos contenidos. | ||
- | * //Dump Stores Procedures...//, | ||
- | * //Export to Self-Contained File//: Para exportar toda la base de datos en un solo fichero (podemos dar nombre al fichero). En caso contratio creará un fichero por cada tabla. | ||
- | * //Include Create Schema//: incluye las instrucciones '' | ||
- | |||
- | |||
- | *Si utilizamos la versión **MySql WorkBench 8 o posterior**, | ||
- | |||
- | - Pestaña '' | ||
- | - Sección '' | ||
- | - Campo '' | ||
- | |||
- | {{ : | ||
---- | ---- | ||
(c) {{date> %Y}} Santiago Faci y Fernando Valdeón | (c) {{date> %Y}} Santiago Faci y Fernando Valdeón |
bloque1/sql.1636108626.txt.gz · Última modificación: 2024/09/16 15:38 (editor externo)