sesion nº 08 - libreria online en php & introduccion a mysql

Post on 01-Jun-2015

1.616 Views

Category:

Education

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

TOPICOS AVANZADOS: Sesion Nº 08 - Libreria Online En Php & Introduccion A Mysql

TRANSCRIPT

Sesión 08:

Ing. Edgar A. Cruz Huaman

INSTITUTO SUPERIOR TECNOLÓGICO INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”“SAN PEDRO”

Librería Online en PHP & Introducción a MySql

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

I. Librería Online en PHP

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

II. Emisión de Reporte en PHP

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

III. MySql

• MySQL es un sistema de gestión de base de datos relacional, multihilo y multiusuario con más de seis millones de instalaciones.

• MySQL es muy utilizado en aplicaciones web.

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

Conectándose y desconectándose al servidor MySQL

• shell> mysql -h NombreDelServidor -u NombreDeUsuario -p – root@saber:~# mysql -h localhost -u root -p

• Salir– "quit", "exit", o presionar CONTROL+D.

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

EJECUTANDO ALGUNAS CONSULTAS

• mysql> select version();

• mysql> SELECT * FROM mi_tabla WHERE nombre = "Lupita AND edad < 30;">

• EL PROMPT DE MYSQL– Consultas en varias lineas.– Para cancelar la consulta: “c” o “\c”.

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

ACCEDIENDO A UNA BASE DE DATOS

• Mostrar las DB existentes.– mysql> show databases;

• Usar una DB.– mysql> USE test Database changed

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

CREANDO UNA BASE DE DATOS

• ERROR 1049:– mysql> USE zoologico;

• Crear la DB:– mysql> CREATE DATABASE zoologico;

• Ingreso y uso de una DB desde el monitor.– shell>mysql -h localhost -u edgar -p zoologico

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

CREANDO UNA TABLA

• CREATE TABLE mascotas( -> nombre VARCHAR(20), propietario VARCHAR(20),

-> especie VARCHAR(20), sexo CHAR(1), nacimiento DATE,

-> fallecimento DATE);

• Mostrar Tablas– mysql> show tables;

• Describir Tablas– mysql> DESCRIBE mascotas;

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

CARGANDO DATOS EN UNA TABLA (I)

• sentencias INSERT y LOADNombre Propietario Especie Sexo Nacimiento Fallecimento

Fluffy Arnoldo Gato f 2008-02-04

Mau Juan Gato m 2003-03-17

Buffy Arnoldo Perro f 2006-05-13

FanFan Benito Perro m 2007-08-27

Kaiser Diana Perro m 2006-08-31 1997-07-29

Chispa Omar Ave f 2006-09-11

Wicho Tomás Ave 2007-02-09

Skim Benito Serpiente m 2001-04-29

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

CARGANDO DATOS EN UNA TABLA (II)

• crear un archivo de texto "mascotas.txt".

• Cargar la data.– mysql> LOAD DATA LOCAL INFILE "mascotas.txt" INTO

TABLE mascotas;

• Insercion registro por registro.– mysql> INSERT INTO mascotas

-> VALUES('Pelusa','Diana','Hamster','f','2000-03-30',NULL);

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

Recuperacion, Actualizacion y Eliminar registros de una Tabla

• Recuperar datos.– SELECT LaInformaciónQueDeseamos FROM

DeQueTabla WHERE CondiciónASatisfacer;

– mysql> SELECT * FROM mascotas;

• Eliminar registros de una tabla– mysql> DELETE FROM mascotas;

• Actualizar los datos de una Tabla.– mysql> UPDATE mascotas SET nacimiento="1989-08-

31" WHERE nombre="Kaiser";

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

SELECCIONANDO REGISTROS PARTICULARES

• mysql> SELECT * FROM mascotas WHERE nombre="Kaiser";

• mysql> SELECT * FROM mascotas WHERE nacimiento >= "2000-1-1";

• mysql> SELECT * FROM mascotas WHERE especie="Perro" AND sexo="f";

• mysql> SELECT * FROM mascotas WHERE especie = "Ave" OR especie = "Gato";

• mysql> SELECT * FROM mascotas WHERE (especie = "Gato" AND sexo = "m") OR (especie = "Perro" AND sexo = "f");

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

SELECCIONANDO COLUMNAS PARTICULARES

• mysql> SELECT nombre, nacimiento FROM mascotas;

• mysql> SELECT propietario FROM mascotas;

• mysql> SELECT DISTINCT propietario FROM mascotas;

• mysql> SELECT nombre, especie, nacimiento FROM mascotas WHERE especie = "perro" OR especie = "gato";

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

ORDENANDO REGISTROS

• mysql> SELECT nombre, nacimiento FROM mascotas ORDER BY nacimiento;

• mysql> SELECT nombre, nacimiento FROM mascotas ORDER BY nacimiento DESC;

• mysql> SELECT nombre, especie, nacimiento FROM mascotas ORDER BY especie, nacimiento DESC;

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

CALCULOS CON FECHAS (i)

• mysql> SELECT nombre, nacimiento, CURRENT_DATE,

-> (YEAR(CURRENT_DATE) - YEAR(nacimiento))

-> - (RIGHT(CURRENT_DATE,5) < RIGHT(nacimiento,5)) AS edad FROM mascotas;

• mysql> SELECT nombre, nacimiento, CURRENT_DATE,

-> (YEAR(CURRENT_DATE) - YEAR(nacimiento))

-> - (RIGHT(CURRENT_DATE,5) < RIGHT(nacimiento,5))

-> AS edad FROM mascotas ORDER BY edad;

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

CALCULOS CON FECHAS (ii)

• Ejercicio: Encontrar los animales que cumplen año el proximo mes.– mysql> SELECT nombre, nacimiento,

MONTH(nacimiento) FROM mascotas;

– mysql> SELECT nombre, nacimiento FROM mascotas WHERE MONTH(nacimiento) = 5;

• Extra:– mysql> SELECT nombre, nacimiento FROM mascotas

WHERE MONTH(nacimiento) = MONTH(DATE_ADD(NOW(), INTERVAL 1 MONTH));

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

COINCIDENCIA DE PATRONES

• Para encontrar los nombres que comienzan con b :

– mysql> SELECT * FROM mascotas WHERE nombre LIKE "b%";

• Para encontrar los nombres que finalizan con fy :

– mysql> SELECT * FROM mascotas WHERE nombre LIKE "%fy";

• Para encontrar nombres que contienen una s :

– mysql> SELECT * FROM mascotas WHERE nombre LIKE "%s%";

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

CONTEO DE FILAS

• # de mascotas:

– mysql> SELECT COUNT(*) FROM mascotas;

• # de mascotas por propietario:

– mysql> SELECT propietario, COUNT(*) FROM mascotas GROUP BY propietario;

• El número de animalitos por especie:

– mysql> SELECT especie, COUNT(*) FROM mascotas GROUP BY especie ;

• número de animalitos por sexo, y cuyo sexo es conocido:

– mysql> SELECT especie, sexo, COUNT(*) FROM mascotas

WHERE especie="Perro" OR especie="Gato" GROUP BY especie, sexo;

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

USANDO MAS DE UNA TABLA

• Ejercicio:– El nombre de la mascota para saber a cuál de

ellas se refiere el evento.– Una fecha para saber cuando ocurrió el

evento.– Una descripción del evento.– Un campo que indique el tipo de evento, si

deseamos categorizarlos.

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

USANDO MAS DE UNA TABLA (ii)

• mysql> CREATE TABLE eventos(nombre varchar(20), fecha date, tipo varchar(15), descripcion varchar(255));

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

Cargar los datos para la tabla eventos

• nombre fecha tipo descripción• Fluffy 2001-05-15 camada 4 gatitos, 3 hembras, 1 macho

• Buffy 2001-06-23 camada 5 perritos, 2 hembras, 3 machos

• Buffy 2002-06-19 camada 2 perritos, 1 hembra, 1 macho

• Chispa 2000-03-21 veterinario Una pata lastimada

• FanFan 2001-08-27 cumpleaños Primera vez que se enfermo de la panza

• FanFan 2002-08-03 veterinario Dolor de panza

• Whicho 2001-02-09 cumpleaños Remodelación de casa

– P.D. Guardar el archivo eventos.txt

– mysql> LOAD DATA LOCAL INFILE "eventos.txt" INTO TABLE eventos;

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

• Desemos conocer la edad de cada mascota cuando tuvieron una camada.– mysql> SELECT mascotas.nombre, (TO_DAYS(fecha) -

TO_DAYS(nacimiento))/365 AS edad, descripcion FROM mascotas, eventos WHERE mascotas.nombre=eventos.nombre AND tipo='camada';

INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman

top related