Base de Datos Mysql
February 1, 2023 | Author: Anonymous | Category: N/A
Short Description
Download Base de Datos Mysql...
Description
BASE DE DATOS MYSQL
E
X
s
t
E
u
d
L
i
a
n
t
e
M
e
n
T
I
V
I
Z
C
ÍNDICE TEMA
PÁGINA
¿Qué es una base de datos?. Modelo de datos. Lenguaje SQL. Base de datos relacional . Diagramas Entidad-Relación Entidad-Relación.. Esquema E-R a relacional. Normalización. MYSQL.
3 4 6 7 15 20 26 32
¿Qué es una base de datos?
Las bases de datos son estructuras organizadas de datos relacionados entre sí que nos permiten obtener, eventualmente, información actualizada acerca de una organizació organización. n.
El propósito de una base de datos es ayudar a las personas a dar seguimiento a las cosas. Un sistema gestor de bases de datos (SGBD) consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a dichos datos. La colección de datos, normalmente denominada base de datos, contiene información relevante para una empresa. Los sistemas de bases de datos se diseñan para gestionar grandes cantidades de información. La gestión de los datos implica tanto la definición de estructuras para almacenar la información como la provisión de mecanismos para la manipulación de la información.
Modelo de Datos La idea primaria de los sistemas informáticos es poder plasmar, a través de diferentes herramientas, situaciones del mundo real. Para traspasar la realidad de una situación en concreto a una base de datos. Una estas herramientas es el modelo de datos, que permite describir de modo abstracto en qué forma se van almacenar y a recuperar la información existente en una base.
Modelo relacional El modelo relacional usa una colección de tablas para representar tanto los datos como sus relaciones. Cada tabla tiene varias columnas, y cada columna tiene un nombre único. El modelo relacional es un ejemplo de un modelo basado en registros. Los modelos basados en registros se denominan así porque la base de datos se estructura en registros de formato fijo de varios tipos. Cada tabla contiene registros de un tipo dado. Cada tipo de registro define un número fijo de campos, o atributos.
Modelo EntidadRelación El modelo de datos entidad-relación (E-R) se basa en una percepción del mundo real que consiste en una colección de objetos básicos, denominados entidades, y de las relaciones entre ellos. Una entidad es una “cosa” u “objeto” del mundo real que es distinguible de otros objetos. El modelo entidad-relación se usa mucho en el diseño de bases de datos es una parte importante de este.
Ejemplo: Modelo entidad-relación
Ejemplo: Modelo relacional
Lenguaje SQL SQL Structure Query Language (Lenguaje de Consulta Estructurado) es un lenguaje de programacion para trabajar con base de datos relacionales como MySQL, Oracle, etc.
SQL es un lenguaje estándar para acceder y manipular bases de datos.
¿Qué se puede hacer con SQL? Puede ejecutar consultas en una base de datos Puede recuperar datos de una base de datos Puede insertar registros en una base de datos Puede actualizar registros en una base de datos Puede eliminar registros de una base de datos Entre otros...
Ejemplo: Select * from clientes;
Base de datos relacional Entendemos el modelo relacional como una propuesta para ver los datos como objetos del mundo real, diferenciales entre sí por sus características básicas. Un objeto dado puede ser descrito por la colección de características que tiene (llamadas atributos) y distinguido de otros objetos a partir de eso mismo. Este modelo admite relaciones uno a varios, uno a uno y varios a varios, haciendo referencia a la información que guardamos, por ejemplo: (mundo real) una factura de una casa de computación alberga los datos de uno a muchos productos; esto equivaldría a una relación de uno (factura) a muchos (productos). A continuación se explica uno por uno los componentes de una base de datos relacional.
TABLA Es una colección de una o más columnas y cero o más filas. Puede entenderse como una estructura de datos simple que se asemeja a una matriz de dos niveles: el primero podría representar el número de fila, y el segundo, el número de columna. La tabla permite organizar los datos en filas (también llamadas tuplas o registros) y columnas (atributos, campos). Cada una de estas filas (así como los datos que se encuentran contenidos en ella) debe ser distinta con respecto a las demás.
Cada columna dentro de una fila es el valor de un atributo de esa fila.
ATRIBUTOS Un atributo define y diferencia una entidad de otra. Los atributos pueden verse como características de las entidades. Por ejemplo: un perro puede tener un nombre, un dueño, un color de pelo, una edad, una comida preferida y demás. Entendemos al perro como una (entidad) y su nombre como (atributo) de esa entidad.
RELACIÓN Una relación es una vinculación entre ideas, un modo de asociar entidades/tablas para lograr el objetivo que tienen en común. Es decir que mediante esa vinculación es posible realizar una función. La relación es una asociación entre entidades. Por ejemplo, podemos decir que la entidad factura tiene una relación con la entidad productos (de donde se obtienen los detalles de lo que vamos a registrar).
CLAVE PRIMARIA Para diferenciar una entidad de otra, debemos remitirnos a sus atributos y, para distinguir una fila de otra dentro de una tabla, nos guiamos por la clave primaria o llave primaria.
Una clave primaria ofrece la particularidad de no tener valores repetidos. Para decidir cual de todos los atributos formarán parte de la clave primaria, debemos buscar uno que cumpla con el requisito anterior,y, si no existe, demos crear una clave primaria artificial para que actue como llave primaria.
Si se tuvieran los siguientes atributos de una tabla llamada alumnos:
En la tabla alumnos no hay ningún atributo que no pueda llegar a repetirse en los distintos alumnos. Por lo que se tiene que crear una clave y asignarla a cada alumno, por ejemplo, puede ser codigo_alumno.
CLAVE FORÁNEA Las claves foráneas permiten establecer conexiones entre las filas de las relaciones. Para hacer la conexión, una clave foránea tiene el conjunto de atributos de una relación que referencian la clave primaria de otra relación (o incluso de la misma relación). Las claves foráneas tienen por objetivo establecer una conexión con la clave primaria que referencian. Por lo tanto, los valores de una clave foránea deben estar presentes en la clave primaria correspondiente, o bien deber ser valores nulos. En caso contrario, la clave foránea representa una referencia incorrecta. Acontinuación un ejemplo:
En el ejemplo anterior, se tienen dos tablas relacionadas, una tabla llamada cliente con clave primaria Codigo_cliente y otra tabla llamada factura con clave primaria Numero_factura y clave foránea Codigo_cliente que referencia a la clave primaria de la tabla clientes. De esta forma, con la relación entre cliente y factura se pueden obtener datos como que facturas tiene tal cliente o que cliente tiene tal factura
RELACIONES ENTRE TABLAS Una base de datos está compuesta por tablas que se relacionan de alguna manera para darle un sentido al sistema y plasmar lo más fielmente posible lo que sucede en el mundo real. Las relaciones pueden catalogarse según sus propiedades, como por ejemplo sus cardinalidades. La cardinalidad específica el número de instancias de una entidad que se puede relacionar con un número de instancias de otra entidad.
Existen tres tipos de cardinalidades: Uno a uno Uno a varios Varios a varios
Cardinalidad uno a uno: Una relación de uno a uno entre dos tablas tiene lugar cuando, a cada elemento de la clave de la tabla A, A, se le asigna un único elemento de la tabla B B y, para cada elemento de la clave de la tabla B, B, existe un único elemento en la tabla A. A. Por ejemplo, cada país tendrá solo un presidente, y cada presidente tendrá a su cargo solo un país.
Cardinalidad uno a varios: Se dice que existe una relación de uno a varios entre las tablas A y B cuando una clave de la tabla A posee varios elementos relacionados en la tabla B y cuando una clave de la tabla B posee un único elemento relacionado en la tabla A. Por ejemplo, cada ciudadano vota por un candidato, y cada candidato tendrá la posibilidad de ser votado por más de un ciudadano.
Cardinalidad varios a varios: Una relación es de varios a varios entre las tablas A y B cuando una clave de la tabla A posee varios elementos relacionados en la tabla B y, a su vez, una clave de la tabla B posee varios elementos relacionados en la tabla A. Por ejemplo, un libro pudo haber sido escrito por varios autores, y cada autor pudo haber escrito varios libros.
Cardinalidad uno a uno
Cardinalidad uno a varios
Cardinalidad varios a varios Las cardinalidades apropiada para un conjunto de relaciones particular depende obviamente de la situación del mundo real que el conjunto de relaciones modela. Por ejemplo, si en un banco particular un préstamo puede pertenecer únicamente a un cliente y un cliente puede tener varios préstamos, entonces el conjunto de relaciones de cliente a préstamo es uno a
varios. Si un préstamo puede pertenecer a varios clientes el conjunto de relaciones es varios a varios.
Diagramas Entidad-Relación Los diagramas E-R pueden expresar gráficamente las estructuras lógica general de las bases de datos. Los diagramas E-R son sencillos y claros, cualidades que pueden ser responsables en gran parte de la popularidad del modelo E-R. Estos diagramas consta de las siguientes componentes principales:
Rectángulos,
que
representan
conjuntos
de
entidades. Elipses, que representan atributos. Rombos, que representan conjuntos de relaciones. Lineas, que unen los atributos con los conjuntos de entidades y los conjuntos de entidades con los conjuntos de relaciones. Elipses discontinuas, que denotan atributos derivados. Líneas dobles, que indican participación total de una entidad en un conjunto de relaciones.
Rectángulos dobles, que representan conjuntos de entidades débiles.
Cardinalidades: 1 a 1 - Uno a uno 1 a N - Uno a varios N a N / N a M - Varios a varios
Tipos de cardinalidades:
Un maestro imparte a un solo alumno y a un alumno le imparte un solo maestro.
Un maestro imparte a varios alumnos y a un alumno le imparte un solo maestro.
Un maestro imparte a un solo alumno y a un alumno le imparten varios maestros.
Un maestro imparte a varios alumnos y a un alumno le imparten varios maestros. Nota: Cuando la cardinalidad es 1, la línea debe tener una punta de flecha hacia la entidad.
En la imagen anterior, se tiene un esquema E-R con dos entidades (cliente y cuenta). Cliente tiene como atributos nombre,calle,ciudad y su identificador único llamado id-cliente. Cuenta tiene como atributos número-préstamo que es su identificador único y saldo. Ambas tienen una relación llamada con un atributo unido llamado fecha-acceso. impositorentidades Note que los identificadores de cada entidad (clave primaria), deben estar subrayados. En este ejemplo, la relación tiene un atributo. Si un conjunto de relaciones tiene también algunos atributos asociados a él, entonces se unen esos atributos a ese conjunto de relaciones. En el ejemplo, se tiene el atributo descriptivo fechaacceso unido al conjunto de relaciones impositor para especificar la fecha más reciente en la que un cliente accedió a esa cuenta. Los atributos descriptivos son propiedades que brindan información extra extra en la relación de las entidades.
Ejercicios de ejemplo: 1. Si desea informatizar la gestión de una tienda informática. La tienda dispone de una serie de productos que se pueden vender a los clientes." De cada producto informático se desea el código, descripción, precio y número de existencias. Un cliente puede comprar varios productos en la tienda y un mismo producto puede ser comprado por varios clientes. Cada vez que se compre un articulo quedara registrada la compra en la base de datos junto con la fecha en la que se ha comprado el articulo. La tienda tiene contactos con varios proveedores que son los que suministran los productos. Un mismo producto puede ser suministrado por varios proveedores. De cada proveedor se desea guardar el código, nombre, apellidos, dirección, y número de teléfono.
2. Se desea diseñar una base de datos para almacenar y gestionar la información empleada por una empresa dedicada a la venta de automóviles, teniendo en cuenta los siguientes aspectos: La empresa dispone de una serie de coches para su venta. Se necesita conocer la matrícula, marca y modelo, el color y el precio de venta de cada coche. Los datos que interesa conocer de cada cliente son el NIF, nombre, dirección,ciudad y número de teléfono: además, los clientes se diferencian por un código interno de la empresa que se incrementa automáticamente cuando un cliente se da de alta en ella. Un cliente puede comprar tantos coches como desee a la empresa. Un coche determinado solo puede ser comprado por un único cliente. El concesionario también se encarga de llevar a cabo las revisiones que se realizan a cada coche. Cada revisión tiene asociado un código que se incrementa automáticamente por cada revisión que se haga. De cada revisión se desea saber si se ha hecho cambio de filtro, si se ha hecho cambio de aceite, si se ha hecho cambio de frenos u otros. Los coches pueden pasar varias revisiones en el concesionario.
Transformación de un esquema E-R a un esquema relacional. Una vez obtenido el esquema conceptual mediante el modelo E-R, hay que definir el modelo lógico de datos. Las reglas básicas para transformar un esquema conceptual E-R a un esquema relacional son:
Toda entidad se transforma en una tabla.
Todo atributo se transforma en columna dentro de una tabla. El identificador único de la entidad se convierte en clave primaria.
Toda relación N:M se transforma en una tabla que tendrá como clave primaria la concatenación de los atributos clave de las entidades que asocia.
Imagen-1
En Imagen-1:
1. Cada entidad se convierte en una tabla y los atributos de las entidades se convierten en columnas de las tablas. Lo representamos así: Clientes(Cod_cliente,nombre,dirección,teléfono). Artículos(Cod_articulo,precio,strock,denominación). 2. La relación N:M se convierte a tabla. El nombre que se la da es el que pongamos a la relación, en este caso COMPRA. La clave estará formada por la concatenación de claves de las tablas anteriores. Estas a su vez pasan a ser claves ajenas y referencian a las tablas y ARTÍCULO. En estaCLIENTE relación, además de añadir las claves de las entidades anteriores, se añaden los atributos que intervienen en la relación. La tabla nos queda así: Compra(cod_cliente (FK),cod_articulo Compra(cod_cliente (FK),Uni_ventas,Fecha_ventas). El esquema relacional queda de la siguiente manera:
Nota: La tabla compra también tiene que tener un identificador (clave primaria), FK significa Foreign Key - Llave Foránea.
En la transformación de relaciones 1:N existen dos soluciones posibles: Transformar la relación en una tabla. Se hace como
si se tratara de una relación N:M. Esta solución se realiza cuando se prevé que en un futurotiene la relación se convertirá en N:M y cuando la relación atributos propios. También se crea una nueva tabla cuando la cardinalidad es opcional, es decir, (0,1) y (0,M). La clave de esta tabla es la de la entidad del lado muchos. Propagar la clave. Este caso se aplica cuando la
cardinalidad es obligatoria, es decir, cuando tenemos cardinalidad (1,1) yde(0,M) (1,M). Se el atributo principal la oentidad quepropaga tiene de cardinalidad máxima 1 a la que tiene de cardinalidad máxima N, desapareciendo el nombre de la relación. Si existen atributos propios en la relación, éstos también se propagarán.
Imagen-2
En la imagen-2:
1. Se convierten a tabla las dos entidades: TEMAS (COD_TEMA, DESCRIPCIÓN). LIBROS (COD_LIBRO, AUTOR, ISBN, TÍTULO, NUM_EJEMPLARES). 2. Se propaga la clave, de la entidad TEMAS a la entidad LIBROS. La entidad LIBROS quedará así: LIBROS (COD_LIBRO, AUTOR, ISBN, TÍTULO, NUM_EJEMPLARES, COD_TEMA(FK)). El esquema relacional queda de la siguiente manera:
En la transformación de relaciones 1:1 se tienen en cuenta las cardinalidades de las entidades que participan. Existen dos soluciones: Transformar la relación en una tabla. Si las
entidades poseen cardinalidades (0,1), la relación se convierte en una tabla.
Propagar la clave. clave. Si una de las entidades posee cardinalidad (0,1) y la otra (1,1), conviene propagar la clave de la entidad con cardinalidad (1,1) a la tabla resultante de la entidad de cardinalidad (0,1). Si ambas entidades poseen cardinalidades (1,1), se puede propagar la clave de cualquiera de ellas a la tabla resultante de la otra. En este caso, también se pueden añadir los atributos de una entidad a otra, resultando una única tabla con todos los atributos de las entidades y de la relación, si los hubiera, eligiendo como clave primaria una de las dos.
Imagen-3 En este caso, la clave se propaga desde la entidad PUESTOTRABAJO, con cardinalidad (1,1), a la entidad EMPLEADO, con cardinalidad (0,1). Las tablas las representaremos así: PUESTOTRABAJO (COD_PUESTO, DESCRIPCIÓN, PUESTOTRABAJO OFICINA, DESPACHO, MESA). EMPLEAD (COD_EMPLE, NOMBRE, DIRECCIÓN, TELEFONO, COD_PUESTO(FK)).
El esquema relacional queda de la siguiente manera:
Resumiendo: 1a1 La llave primaria de una de las 2 cardinalidades (1), se ira como foránea a la otra entidad. 1aN Opción 1: La llave Primaria de la Cardinalidad (1), se va como llave foránea, a la entidad de Cardinalidad de Muchos (N). Opción 2: Si la relación tiene atributos, se resolverá igual que N a M NaM La Relación se Convertirá en una Nueva Entidad, y se nombrará con el mismo nombre de la relación. Se debe crear una llave primaria para la nueva entidad.
Normalización Cuando normalizamos una base de datos lo que hacemos es aplicar una serie de reglas con el objetivo fundamental de evitar problemas futuros relacionados con la lógica de diseño implementada en ella. Aplicar las reglas de normalizació normalización n nos asegura, en principio, las dos siguientes cosas: Evitar la redundancia de datos. Evitar errores en lo que se refiere inserción,actualización inserción,actua lización y borrado de registros.
a
la
DATOS REDUNDANTES Uno de los principios fundamentales en lo que respecta al diseño de bases de datos es el evitar la redundancia de datos. A continuación un ejemplo en donde se explicará cuando se tiene redundancia de datos: Se tiene una tabla de clientes con los siguientes datos:
Aquí el campo que tiene claras posibilidades posibilidades de repetir datos es Nacionalidad (si tenemos más de un cliente con la misma nacionalidad, ya hay redundancia, pero no hay que esperar a que esto suceda: si existe la posibilidad ya es suficiente). ¿Por qué no pensar lo mismo de Nombre y Apellido o de Fecha de nacimiento? Porque tanto los nombres como los apellidos son infinitos y lo mismo ocurre con las fechas. Incluso a la hora de ingresar los datos de un cliente, es más seguro que seleccionemos su nacionalidad desde una lista, y no que la ingresemos manualmente, ya que esto posibilitaría errores de tipeo o distintas de ingreso (Argentina,y Argentino, Arg.,etc) formas y, por ende, datos erróneos difíciles de tratar en nuestra base. Si quisiéramos saber la cantidad de clientes por país que tienen depósitos en el banco, aunque construyamos correctamente la consulta SQL, posiblemente los datos recuperados no reflejen la realidad. Guardando las nacionalidades en una tabla se pueden listar después. Si no se hiciera, la tabla quedaría de la siguiente manera:
Para solucionar el problema anterior y otros derivados que surgen a partir de la redundancia de datos, modificamos la estructura de la tabla de esta menera:
La idea madre de todo esto es que los índices numéricos ocupan menos espacio que las cadenas de caracteres: así, en nuestro ejemplo, escribimos la palabra "Argentina" sólo una vez, y el número 1 (código correspondiente a Argentina) varias veces en reemplazo de "Argentina". Por eso, casi nunca se habla de redundancia de datos cuando los campos en cuestión son numéricos. Reglas normales Aunque existen 5 formas normales, una base de datos ya se considera normalizada al llegar a la tercera forma normal.
Primera Forma Normal - 1FN: Una tabla se encuentra en la primera forma normal si cada una de las columnas admite un único valor para cada registro. Veamos un ejemplo:
En la tabla anterior existe una serie de problemas. A través de instrucciones SQL no podríamos contestar, por ejemplo, cuántosmás productos Juan López o cuál es el producto vendidocompró de la empresa. Estos inconvenientes se dan posiblemente porque no se respeta la primera forma normal: la columna Producto contiene más de un valor por registro. Es importante mencionar que aplicando la primera forma normal, nuestra tabla original se divide en dos y queda de la siguiente manera:
Segunda Forma Normal - 2FN: En esta forma normal, lo que se trata de lograr es que cada uno de los campos de una tabla depende directamente de la clave primaria. Pensemos en el siguiente ejemplo que consiste en guardar datos de empleados(nombre,empresa en la que trabaja, dirección de la empresa):
El campo Nombre_empleado depende directamente de la clave Cod_empleado. En cambio, Dirección_empresa no depende de Cod_empleado. En cambio, Dirección_empresa no depende de Cod_empleado, sino de la empresa. Ver este tipo de situaciones depende de la experiencia que se vaya logrando. En definitiva la situacióon final podría ser la siguiente manera:
O también:
En el primer caso podríamos suponer que un empleado puede trabajar en más de una empresa.
Tercera Forma Normal - 3FN: Una tabla está en tercera forma normal si sus campos dependen únicamente de la clave, es decir, no dependen unos de otros. Si repasamos el ejemplo anterior veremos que esto nos sucede. Veamos otro ejemplo de esto:
Si se presta atención, veremos que el campo Duración depende más del campo DVD que de Cliente. Aplicando la tercera forma normal obtendríamos el siguiente escenario:
Gestor de base de datos: MYSQL
Se dispone de varias herramientas para la gestión de base de datos, por nombrar algunos esta: SQL Server Oracle MongoDB Cassandra PostgreSQL MariaDB En este documento se trabajará con MYSQL.
¿Por qué MySQL? MySQL es un sistema gestor de bases de datos muy utilizados en la actualidad por los siguientes motivos: Rapidez Posibilidad de trabajar en diferentes plataformas Múltiples formatos de tablas para cada necesidad Seguridad Gran estabilidad Administración simple Si bien todavía le queda mucho camino por recorrer, en corto tiempo ha logrado darse a conocer en el ámbito informático y fue afianzándose progresivamente en el mundo de las bases de datos relacionales. Desde hace algún tiempo, se ha ido dando una particular unión entre base de datos y el lenguaje de programación PHP, por este motivo, MySQL se utiliza principalmente en sitios web.
INSTALACIÓN DE MYSQL Link de descarga: https://dev.mysql.com/downloads/windows/installer/8.0.html
En la siguiente pantalla seleccionamos "No thanks, just start my download." y procedemos a descargar el instalador de MySQL (este programa luego nos descargará la última versión)Una vez descargado el archivo "mysqlinstaller-web-community-8.0.12.0.msi" (o una versión posterior) procedemos a ejecutarlo y luego de aceptar "los términos y condiciones" dejaremos la mayoría de las opciones por defecto:
En la segunda pantalla dejamos seleccionado "Developer Default" que nos instalará la mayoría de las herramientas que necesitaremos como programador:
La pantalla siguiente nos informa algunos otros programas que se instalarán para el correcto funcionamiento de MySQL:
El siguiente paso es el que más tiempo demorará debido a que se descargarán de internet el servidor de MySQL propiamente dicho, manuales, drivers de conexión para distintos lenguajes etc, una vez descargados se ejecuta el proceso de instalación:
La siguiente ventana nos informa que se procederá a configurar el "MySQL Server", "MySQL Router" y "Samples":
Dejemos seleccionada la opción por defecto "Standalone MySQL Server":
Para configurar el servidor debemos indicar en "Connectivity" el puerto de comunicaciones que por defecto está configurado con el valor "3306" (si ya tiene instalada otra versión de MySQL en su computadora cambie este puerto por "3307" y no tendrá conflictos con la versión anterior):
Dejemos el método de autenticación recomendado:
En el siguiente paso debemos definir la clave para el usuario "root" o raiz del servidor de base de datos. No debemos olvidar dicha clave ya que cada vez que necesitemos acceder al servidor MySQL se nos pedirá dicha clave para el usuario "root":
No crearemos en este momento otras cuentas de usuarios para el servidor MySQL (lo veremos más adelante en este curso) Dejamos los valores por defecto para la pantalla de "Window Service":
Finalmente confirmamos la configuración definida en los diálogos anteriores:
Los mismos pasos ahora damos para configurar el "MySQL Router", dejamos datos por defecto:
La siguiente pantalla nos permite verificar el correcto funcionamiento del servidor, debemos ingresar la clave que creamos anteriormente:
La última pantalla inicia las aplicaciones "Workbench" y "MySQL Shell".
Tenemos ya todo el software necesario para desarrollar en forma local el curso de MySQL instalado en nuestro sistema operativo Windows:
Comenzar con MYSQL TIPOS DE DATOS:
CREAR BASE DE DATOS: Para crear una nueva base de datos usaremos la sentencia create database:
Para eliminar una base de datos, usamos la sentencia drop database:
MySQL es sensible al uso de mayúsculas y minúsculas, tanto en la definición de base de datos como de tablas o columnas.
USAR BASE DE DATOS CREADA:
Para trabajar con una base de datos, se tiene que abrir, para eso se utiliza el comando "USE", para indicar que base de datos se va a utilizar.
CREAR TABLA:
En este caso, la sentencia create table table construye una nueva tabla en la base de datos en uso. La tabla contiene tres columnas, nombre,dirección, y teléfono, todas de tipo carácter y de longitudes 30, 40 y 15 respectivamente. Si se intenta guardar en ellas valores que sobrepasen esos límites, serán truncados para poderlos almacenar. Por ese motivo, es importante reservar espacio suficiente para cada columna. Si se prevé que muchos registros ocuparán sólo una fracción del espacio reservado, se puede utilizar el tipo varchar, similar a char char,, con la diferencia de que el valor ocuparía un espacio menor al especificado si la cadena es más corta que el máximo indicado, ahorrando así espacio de almacenamiento.
auto_increment crea la id int unsigned NOT NULL auto_increment columna id , este tipo de campo asignará una ID numérica única a cada registro en la tabla (lo que significa que no hay dos filas que tengan la misma id en este caso), MySQL asignará automáticamente una nueva, valor único para el campo de id del registro (comenzando con 1). Las tablas puedden eliminarse con drop table: table:
Alternativamente, se pueden siguiente con condicional:
utilizar
la
sintaxis
Aunque la creación de una clave primaria puede declararse como atributo de columna, es conveniente definirla como restricción de tabla. También es posible indicar restricciones sobre la tabla y no sobre columnas especificas:
La primera restricción restricción se refiere a la clave primaria, compuesta por las columnas nombre y nacimiento: no puede haber dos personas que se llamen igual y que hayan nacido en la misma fecha. La clave primaria permite identificar de manera unívoca cada registro. La segunda restricción restricción define que la pareja de una persona debe ser única: dos personas no pueden tener la misma pareja. Too intento de insertar un nuevo registro donde el nombre de la pareja ya exista, será rechazado. Cuando se restringe una columna con unique, los valores null reciben un trato especial, pues permiten múltiples valores nulos. La tercera restricción afecta a la columna proveedor, sólo puede tomar valores que existan en la clave primaria de la tabla proveedor. Las restricciones de la tabla pueden definirse con un identificador útil para hacer referencias posteriores a la restricción:
INSERTAR UNA FILA EN UNA TABLA:
Las strings varchar también se pueden insertar utilizando comillas simples:
ACTUALIZAR UNA FILA EN TABLA:
El valor int se puede insertar en una consulta sin comillas. Las cadenas y las fechas deben estar entre comillas simples ' o comillas dobles " update usuarios set nombre='GustavoGarcia' where nombre='Gustavo'; update usuarios set nombre='MarceloDuarte', clave='Marce' where nombre='Marcelo';
ELIMINAR UNA FILA DE UNA TABLA:
Esto borrará la fila que tiene id es 8.
SELECCIONANDO FILAS:
MOSTRAR LISTA DE BASE DE DATOS:
MOSTRAR TABLAS EN UNA BASE DE DATOS:
MOSTRAR LOS CAMPOS DE UNA TABLA:
ORDENAR DATOS (ORDER BY): Use la cláusula ORDER BY para BY para ordenar el resultado de una tabla en una o más columnas. Si se desea que, al momento de hacer una consulta, los datos aparezcan en un orden determinado, es preciso utilizar la cláusula ORDER BY BY en la sentencia SELECT.
FUNCIONES AGREGADAS:
AGRUPAR DATOS (GROUP BY): La cláusula MySQL GROUP BY se usa en una declaración SELECT para recopilar datos en varios registros y agrupar los resultados por una o más columnas. Ejemplo utilizando la función SUM:
La función SUM sumará todos los valores que se encuentren en la columna quantity,mostrará el resultado como "Total quantity" gracias a "AS" que se utiliza para asignar un nombre alias a la nueva columna que mostrará el resultado de la suma. A continuación un ejemplo:
GRUPO USANDO LA FUNCIÓN MIN: Supongamos una tabla de empleados en la que cada fila es un empleado que tiene un name , un department y un salary .
Esto le diría qué departamento contiene el empleado con el salario más bajo y cuál es ese salario.
GRUPO USANDO LA FUNCIÓN COUNT:
GRUPO POR USO QUE TIENE:
Usar GROUP BY ... HAVING para filtrar registros agregados es análogo a usar SELECT ... WHERE para filtrar registros individuales.También podrías decir HAVING Man_Power >= 10 ya que HAVING entiende "alias".
HAVING: La cláusula HAVING especifica condiciones de búsqueda para grupos de filas; lleva a cabo la misma función que antes cumplía la cláusula WHERE para las filas de todas las tablas, pero ahora las condiciones se aplican a los grupos obtenidos. Se usan para mostrar los resultados de grupos de filas en lugar de filas individuales.
GROUP BY CON FUNCIONES AGREGADAS: Tabla de pedidos:
Contar: Devuelve el número de filas que satisfacen un criterio específico en la cláusula WHERE . Ej .: Número de pedidos para cada cliente.
Resultado:
Sumar Devuelve la suma de la columna seleccionada. Ej : Suma del total y artículos para cada cliente
Resultado:
MAX: Devuelve el valor más alto de una determinada columna o expresión. Por ejemplo: el mayor total de pedidos para cada cliente.
Resultado:
MIN: Devuelve el valor más bajo de una determinada columna o expresión. Ej .: El pedido más bajo para cada cliente.
Resultado:
SELECCIONAR POR NOMBRE DE COLUMNA: Ejemplo:
Consulta:
Resultado:
SELECCIONAR TODAS LAS COLUMNAS: Consulta:
Resultado:
SELECCIONAR CON WHERE: Consulta:
Resultado:
SELECCIONAR CON LIKE (%):
"adm" en cualquier lugar:
Comienza con "adm":
Termina con "adm":
Al igual que el carácter % en una cláusula LIKE coincide con cualquier número de caracteres, el carácter _ solo coincide con un carácter. Por ejemplo:
SELECCIONAR CON ALIAS: Los alias de SQL se utilizan para cambiar temporalmente el nombre de una tabla o una columna.Generalmente se utilizan para mejorar la legibilidad.
Consulta:
Resultado:
SELECCIONAR CON CASE O IF: Consulta:
Resultado:
Con IF:
Nota:
Esto significa que: SI st.percentage> = 35 es TRUE luego devuelva 'Pass' ELSE return 'Fail'
REFERENCIAS BIBLIOGRÁFICAS PHP + MYSQL DESDE CERO Francisco Minera. (2014) DESARROLLO PHP + MYSQL Francisco Minera. (2011) FUNDAMENTOS DE BASE DE DATOS Silberschatz, Korth, Sudarshan. (2006) BASES DE DATOS Rafael Camps Paré, Luis Alberto Casillas Santillán, Marc Gibert Ginestà, Carme Martín Escofet, Oscar Pérez Mora. (2005) PROCESAMIENTO DE BASES DE DATOS David M. Kroenke. (2003) APRENDIZAJE MYSQL EBOOK. (2019)
AXEL AMAVIZCA
BASE DE DATOS MYSQL Ebook: Realizado el 25/08/2020
View more...
Comments