1
Bases de datos (BD): son un mecanismo que permite guardar
información estructurada de forma permanente.
Existen diferentes modelos de BD pero el mas usado es el modelo
relacional.
Una base de datos relacional esta integrada por un conjunto de tablas
y registros que contienen atributos.
BD: Casas
Id_persona nombre direccion
Tabla: personas
Id_propiedades descripción precio
Tabla:propiedades
Id_total persona propied
ad
ciu
Tabla: totales
MySQL
M.C. Pedro Bello López
2
Mysql: Características
· Disponibilidad en gran cantidad de
plataformas y sistemas.
· Diferentes opciones de almacenamiento
según si se desea velocidad en las
operaciones o el mayor número de
operaciones disponibles.
· Transacciones y claves foráneas.
· Conectividad segura.
· Replicación.
· Búsqueda e indexación de campos de texto.
3
· Acceso a las bases de datos de forma
simultánea por varios usuarios y/o
aplicaciones.
· Seguridad, en forma de permisos y
privilegios
· Portabilidad: SQL es también un lenguaje
estandarizado, de modo que las consultas
hechas usando SQL son fácilmente
portables a otros sistemas y plataformas.
· Escalabilidad: es posible manipular bases
de datos enormes, del orden de seis mil
tablas y alrededor de cincuenta millones de
registros, y hasta 32 índices por tabla.
4
MySQL : Ventajas
Iniciando MySql
· Comprobación de entrada al Servidor:
Mysql>
· Comandos para salir del Servidor
Mysql>quit Ó Mysql>exit
5
Comandos básicos
Mostrando Bases de Datos existentes:
Mysql>show databases;
· Activando Base de Datos de Trabajo:
mysql> use nombre_BD;
· Mostrando las Tablas existentes en la Base de Datos actual
Mysql>show tables;
· Describir el esquema de las tablas:
mysql> describe nombre_Tabla;
6
COMANDOS
Existen dos tipos de comandos en MySQL:
DDL crean y definen nuevas bases de datos,
campos e índices.
DML generan consultas para ordenar, filtrar
y extraer datos.
7
DDL
(Data Definition Language)
Incluye los comandos:
• CREATE
• DROP
• ALTER
8
Ejemplo: Base datos Videoteca
• En una Videoteca se requiere
automatizar sus procesos de
rentas, por lo que solicita que la
siguiente información sea
almacenada en una base de datos:
– Películas: título, director, actor.
– Clientes: nombre del cliente, año de
nacimiento.
– Rentas: título de la película, cliente,
fecha de inicio, fecha final
9
10
Tabla: Pelicula
id_pelicula
titulo
director
actor
Tabla: clientes
id_cliente
cliente
year
Tabla: rentas
Id_rentas
id_pelicula
Id_cliente
fechainicio
fechafin
BD: videoteca
CREATE DATABASE
Utilizado para crear nuevas Bases de Datos.
Sintaxis
DROP DATABASE IF EXISTS nombre_BD;
CREATE DATABASE nombre_BD;
Ejemplo
DROP DATABASE IF EXISTS videoteca;
CREATE DATABASE videoteca;
11
CREATE TABLE
Utilizado para crear nuevas tablas, campos e índices.
Sintaxis:
USE nombre_BD;
DROP TABLE IF EXISTS nombre_tabla;
CREATE TABLE nombre_tabla(
var1 tipo1 [NOT NULL] [PRIMARY KEY],
…
varN tipoN
);
12
CREATE TABLE
Ejemplo:
USE videoteca;
DROP TABLE IF EXISTS pelicula;
CREATE TABLE pelicula(
id_pelicula INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
titulo VARCHAR(64) NOT NULL,
director VARCHAR(128) NOT NULL,
actor VARCHAR(128) NOT NULL
);
DROP TABLE IF EXISTS clientes;
CREATE TABLE clientes(
id_cliente INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
cliente VARCHAR(64) NOT NULL
);
13
FOREIGN KEY Y REFERENCES
• Foreign Key es utilizado para designar llaves foráneas en una
tabla.
• References establece cuál es la tabla de donde se obtiene la llave
foránea.
• On delete cascade indica que al eliminar registros en la otra tabla
se eliminan de la tabla actual.
• On update cascade indica que al actualizar registros en la otra
tabla se actualizan en la tabla actual
Sintaxis:
USE nombre_BD;
DROP TABLE IF EXISTS nombre_tabla;
CREATE TABLE nombre_tabla(
var1 tipo1 [NOT NULL] [PRIMARY KEY],
var_foranea tipo x [NOT NULL] …
varN tipoN
FOREIGN KEY(var_foranea) REFERENCES
otra_Tabla(var_foranea) ON DELETE CASCADE ON
UPDATE CASCADE
);
14
Ejemplo de Foreign key
USE videoteca;
DROP TABLE IF EXISTS rentas;
CREATE TABLE rentas(
fecha_inicio date NOT NULL,
fecha_fin date NOT NULL,
id_cliente INT NOT NULL,
id_pelicula INT NOT NULL,
FOREIGN KEY(id_cliente) REFERENCES clientes(id_cliente) ON DELETE
CASCADE ON UPDATE CASCADE,
FOREIGN KEY(id_pelicula) REFERENCES pelicula(id_pelicula) ON DELETE
CASCADE ON UPDATE CASCADE, PRIMARY KEY(id_cliente,id_pelicula,
fecha_inicio)
);
15
DROP
Empleado para eliminar Bases de Datos y
tablas.
Sintaxis
16
DROP Database nombre_BD;
DROP table nombre_tabla;
Ejemplo
DROP table rentas;
ALTER
Utilizado para modificar las tablas agregando
campos o cambiando la definición de los
campos.
17
Sintaxis
ALTER TABLE nombre_tabla
ADD COLUMN campo1 tipo_campo1;
ALTER TABLE nombre_tabla
DROP COLUMN campo1;
ALTER
18
Ejemplo
ALTER TABLE pelicula ADD COLUMN categoria Varchar(20) ;
ALTER TABLE clientes ADD COLUMN year INT(4) ;
ALTER TABLE pelicula DROP COLUMN categoria;
DML
(Data Manipulation Language)
Incluye los comandos:
• INSERT
• SELECT
• UPDATE
• DELETE
19
INSERT
Utilizado para cargar lotes de datos en la base
de datos en una única operación.
20
Sintaxis
Use nombre_BD;
INSERT INTO Tabla (campo1, campo2, .., campoN)
VALUES (valor1, valor2, ..., valorN);
INSERT: Ejemplos en la tabla pelicula
Use Videoteca;
INSERT INTO pelicula (titulo, director, actor) VALUES( 'Blade Runner', 'Ridley
Scott', 'Harrison Ford' );
INSERT INTO pelicula (titulo, director, actor) VALUES( 'Alien', 'Ridley Scott',
'Sigourney Weaver' );
INSERT INTO pelicula (titulo, director, actor) VALUES( 'Doce monos', 'Terry
Gilliam', 'Bruce Willis' );
INSERT INTO pelicula (titulo, director, actor) VALUES( 'Contact', 'Robert
Zemeckis', 'Jodie Foster' );
INSERT INTO pelicula (titulo, director, actor) VALUES( 'Tron', 'Steven Lisberger',
'Jeff Bridges' );
INSERT INTO pelicula (titulo, director, actor) VALUES( 'La guerra de las galaxias',
'George Lucas', 'Harrison Ford' );
21
INSERT: Ejemplos en la tabla clientes
Use Videoteca;
INSERT INTO clientes (cliente, year) VALUES( 'Jorge Perez', 1980);
INSERT INTO clientes (cliente, year) VALUES( 'Juan Dominguez', 1950);
INSERT INTO clientes (cliente, year) VALUES( 'Jose Luis Lopez', 1967);
22
INSERT: Ejemplos en la tabla rentas
Use Videoteca;
INSERT INTO rentas (id_cliente, id_pelicula, fecha_inicio,fecha_fin) select
clientes.id_cliente,pelicula.id_pelicula,CURDATE(),CURDATE()+2 from clientes,pelicula where
clientes.cliente='Jorge Perez' and pelicula.titulo='Tron';
INSERT INTO rentas (id_cliente, id_pelicula, fecha_inicio,fecha_fin) select
clientes.id_cliente,pelicula.id_pelicula,CURDATE(),CURDATE()+2 from clientes,pelicula where
clientes.cliente='Jorge Perez' and pelicula.titulo='Doce monos';
INSERT INTO rentas (id_cliente, id_pelicula, fecha_inicio,fecha_fin) select
clientes.id_cliente,pelicula.id_pelicula,CURDATE(),CURDATE()+2 from clientes,pelicula where
clientes.cliente='Jorge Perez' and pelicula.titulo='Contact';
INSERT INTO rentas (id_cliente, id_pelicula, fecha_inicio,fecha_fin) select
clientes.id_cliente,pelicula.id_pelicula,CURDATE(),CURDATE()+2 from clientes,pelicula where
clientes.cliente='Juan Dominguez' and pelicula.titulo='Contact';
23
SELECT
Utilizado para consultar registros de la base de
datos que satisfagan un criterio determinado
24
Sintaxis
Use nombre_BD;
SELECT [DISTINCT]
<lista_columnas> | *
FROM <lista_tablas>
[WHERE <predicado>]
SELECT
25
Ejemplo
USE videoteca;
SELECT * FROM pelicula;
SELECT * FROM pelicula WHERE director='Ridley Scott';
SELECT titulo FROM pelicula WHERE director='Ridley Scott‘ ORDER BY titulo;
Select pelicula.titulo from pelicula,rentas where id_cliente=1 and
pelicula.id_pelicula=rentas.id_pelicula;
UPDATE
Sintaxis:
Use nombre_BD;
UPDATE Tabla SET
Campo1=Valor1,
Campo2=Valor2, ...
CampoN=ValorN
WHERE Criterio;
26
Utilizado para modificar los valores de los
campos y registros especificados
UPDATE
27
Ejemplo
USE videoteca;
UPDATE pelicula
SET titulo='Star Wars'
WHERE titulo='La guerra de las galaxias';
DELETE
Utilizado para eliminar registros de una tabla de una
base de datos.
Sintaxis:
28
DELETE FROM Tabla WHERE criterio;
Ejemplo
DELETE FROM pelicula where director=‘Ridley Scott’;

MySQL introduccion a my sql usando comandos basicos

  • 1.
    1 Bases de datos(BD): son un mecanismo que permite guardar información estructurada de forma permanente. Existen diferentes modelos de BD pero el mas usado es el modelo relacional. Una base de datos relacional esta integrada por un conjunto de tablas y registros que contienen atributos. BD: Casas Id_persona nombre direccion Tabla: personas Id_propiedades descripción precio Tabla:propiedades Id_total persona propied ad ciu Tabla: totales
  • 2.
  • 3.
    Mysql: Características · Disponibilidaden gran cantidad de plataformas y sistemas. · Diferentes opciones de almacenamiento según si se desea velocidad en las operaciones o el mayor número de operaciones disponibles. · Transacciones y claves foráneas. · Conectividad segura. · Replicación. · Búsqueda e indexación de campos de texto. 3
  • 4.
    · Acceso alas bases de datos de forma simultánea por varios usuarios y/o aplicaciones. · Seguridad, en forma de permisos y privilegios · Portabilidad: SQL es también un lenguaje estandarizado, de modo que las consultas hechas usando SQL son fácilmente portables a otros sistemas y plataformas. · Escalabilidad: es posible manipular bases de datos enormes, del orden de seis mil tablas y alrededor de cincuenta millones de registros, y hasta 32 índices por tabla. 4 MySQL : Ventajas
  • 5.
    Iniciando MySql · Comprobaciónde entrada al Servidor: Mysql> · Comandos para salir del Servidor Mysql>quit Ó Mysql>exit 5
  • 6.
    Comandos básicos Mostrando Basesde Datos existentes: Mysql>show databases; · Activando Base de Datos de Trabajo: mysql> use nombre_BD; · Mostrando las Tablas existentes en la Base de Datos actual Mysql>show tables; · Describir el esquema de las tablas: mysql> describe nombre_Tabla; 6
  • 7.
    COMANDOS Existen dos tiposde comandos en MySQL: DDL crean y definen nuevas bases de datos, campos e índices. DML generan consultas para ordenar, filtrar y extraer datos. 7
  • 8.
    DDL (Data Definition Language) Incluyelos comandos: • CREATE • DROP • ALTER 8
  • 9.
    Ejemplo: Base datosVideoteca • En una Videoteca se requiere automatizar sus procesos de rentas, por lo que solicita que la siguiente información sea almacenada en una base de datos: – Películas: título, director, actor. – Clientes: nombre del cliente, año de nacimiento. – Rentas: título de la película, cliente, fecha de inicio, fecha final 9
  • 10.
    10 Tabla: Pelicula id_pelicula titulo director actor Tabla: clientes id_cliente cliente year Tabla:rentas Id_rentas id_pelicula Id_cliente fechainicio fechafin BD: videoteca
  • 11.
    CREATE DATABASE Utilizado paracrear nuevas Bases de Datos. Sintaxis DROP DATABASE IF EXISTS nombre_BD; CREATE DATABASE nombre_BD; Ejemplo DROP DATABASE IF EXISTS videoteca; CREATE DATABASE videoteca; 11
  • 12.
    CREATE TABLE Utilizado paracrear nuevas tablas, campos e índices. Sintaxis: USE nombre_BD; DROP TABLE IF EXISTS nombre_tabla; CREATE TABLE nombre_tabla( var1 tipo1 [NOT NULL] [PRIMARY KEY], … varN tipoN ); 12
  • 13.
    CREATE TABLE Ejemplo: USE videoteca; DROPTABLE IF EXISTS pelicula; CREATE TABLE pelicula( id_pelicula INT NOT NULL AUTO_INCREMENT PRIMARY KEY, titulo VARCHAR(64) NOT NULL, director VARCHAR(128) NOT NULL, actor VARCHAR(128) NOT NULL ); DROP TABLE IF EXISTS clientes; CREATE TABLE clientes( id_cliente INT NOT NULL AUTO_INCREMENT PRIMARY KEY, cliente VARCHAR(64) NOT NULL ); 13
  • 14.
    FOREIGN KEY YREFERENCES • Foreign Key es utilizado para designar llaves foráneas en una tabla. • References establece cuál es la tabla de donde se obtiene la llave foránea. • On delete cascade indica que al eliminar registros en la otra tabla se eliminan de la tabla actual. • On update cascade indica que al actualizar registros en la otra tabla se actualizan en la tabla actual Sintaxis: USE nombre_BD; DROP TABLE IF EXISTS nombre_tabla; CREATE TABLE nombre_tabla( var1 tipo1 [NOT NULL] [PRIMARY KEY], var_foranea tipo x [NOT NULL] … varN tipoN FOREIGN KEY(var_foranea) REFERENCES otra_Tabla(var_foranea) ON DELETE CASCADE ON UPDATE CASCADE ); 14
  • 15.
    Ejemplo de Foreignkey USE videoteca; DROP TABLE IF EXISTS rentas; CREATE TABLE rentas( fecha_inicio date NOT NULL, fecha_fin date NOT NULL, id_cliente INT NOT NULL, id_pelicula INT NOT NULL, FOREIGN KEY(id_cliente) REFERENCES clientes(id_cliente) ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY(id_pelicula) REFERENCES pelicula(id_pelicula) ON DELETE CASCADE ON UPDATE CASCADE, PRIMARY KEY(id_cliente,id_pelicula, fecha_inicio) ); 15
  • 16.
    DROP Empleado para eliminarBases de Datos y tablas. Sintaxis 16 DROP Database nombre_BD; DROP table nombre_tabla; Ejemplo DROP table rentas;
  • 17.
    ALTER Utilizado para modificarlas tablas agregando campos o cambiando la definición de los campos. 17 Sintaxis ALTER TABLE nombre_tabla ADD COLUMN campo1 tipo_campo1; ALTER TABLE nombre_tabla DROP COLUMN campo1;
  • 18.
    ALTER 18 Ejemplo ALTER TABLE peliculaADD COLUMN categoria Varchar(20) ; ALTER TABLE clientes ADD COLUMN year INT(4) ; ALTER TABLE pelicula DROP COLUMN categoria;
  • 19.
    DML (Data Manipulation Language) Incluyelos comandos: • INSERT • SELECT • UPDATE • DELETE 19
  • 20.
    INSERT Utilizado para cargarlotes de datos en la base de datos en una única operación. 20 Sintaxis Use nombre_BD; INSERT INTO Tabla (campo1, campo2, .., campoN) VALUES (valor1, valor2, ..., valorN);
  • 21.
    INSERT: Ejemplos enla tabla pelicula Use Videoteca; INSERT INTO pelicula (titulo, director, actor) VALUES( 'Blade Runner', 'Ridley Scott', 'Harrison Ford' ); INSERT INTO pelicula (titulo, director, actor) VALUES( 'Alien', 'Ridley Scott', 'Sigourney Weaver' ); INSERT INTO pelicula (titulo, director, actor) VALUES( 'Doce monos', 'Terry Gilliam', 'Bruce Willis' ); INSERT INTO pelicula (titulo, director, actor) VALUES( 'Contact', 'Robert Zemeckis', 'Jodie Foster' ); INSERT INTO pelicula (titulo, director, actor) VALUES( 'Tron', 'Steven Lisberger', 'Jeff Bridges' ); INSERT INTO pelicula (titulo, director, actor) VALUES( 'La guerra de las galaxias', 'George Lucas', 'Harrison Ford' ); 21
  • 22.
    INSERT: Ejemplos enla tabla clientes Use Videoteca; INSERT INTO clientes (cliente, year) VALUES( 'Jorge Perez', 1980); INSERT INTO clientes (cliente, year) VALUES( 'Juan Dominguez', 1950); INSERT INTO clientes (cliente, year) VALUES( 'Jose Luis Lopez', 1967); 22
  • 23.
    INSERT: Ejemplos enla tabla rentas Use Videoteca; INSERT INTO rentas (id_cliente, id_pelicula, fecha_inicio,fecha_fin) select clientes.id_cliente,pelicula.id_pelicula,CURDATE(),CURDATE()+2 from clientes,pelicula where clientes.cliente='Jorge Perez' and pelicula.titulo='Tron'; INSERT INTO rentas (id_cliente, id_pelicula, fecha_inicio,fecha_fin) select clientes.id_cliente,pelicula.id_pelicula,CURDATE(),CURDATE()+2 from clientes,pelicula where clientes.cliente='Jorge Perez' and pelicula.titulo='Doce monos'; INSERT INTO rentas (id_cliente, id_pelicula, fecha_inicio,fecha_fin) select clientes.id_cliente,pelicula.id_pelicula,CURDATE(),CURDATE()+2 from clientes,pelicula where clientes.cliente='Jorge Perez' and pelicula.titulo='Contact'; INSERT INTO rentas (id_cliente, id_pelicula, fecha_inicio,fecha_fin) select clientes.id_cliente,pelicula.id_pelicula,CURDATE(),CURDATE()+2 from clientes,pelicula where clientes.cliente='Juan Dominguez' and pelicula.titulo='Contact'; 23
  • 24.
    SELECT Utilizado para consultarregistros de la base de datos que satisfagan un criterio determinado 24 Sintaxis Use nombre_BD; SELECT [DISTINCT] <lista_columnas> | * FROM <lista_tablas> [WHERE <predicado>]
  • 25.
    SELECT 25 Ejemplo USE videoteca; SELECT *FROM pelicula; SELECT * FROM pelicula WHERE director='Ridley Scott'; SELECT titulo FROM pelicula WHERE director='Ridley Scott‘ ORDER BY titulo; Select pelicula.titulo from pelicula,rentas where id_cliente=1 and pelicula.id_pelicula=rentas.id_pelicula;
  • 26.
    UPDATE Sintaxis: Use nombre_BD; UPDATE TablaSET Campo1=Valor1, Campo2=Valor2, ... CampoN=ValorN WHERE Criterio; 26 Utilizado para modificar los valores de los campos y registros especificados
  • 27.
    UPDATE 27 Ejemplo USE videoteca; UPDATE pelicula SETtitulo='Star Wars' WHERE titulo='La guerra de las galaxias';
  • 28.
    DELETE Utilizado para eliminarregistros de una tabla de una base de datos. Sintaxis: 28 DELETE FROM Tabla WHERE criterio; Ejemplo DELETE FROM pelicula where director=‘Ridley Scott’;