Vous êtes sur la page 1sur 10

Laboratorio de Desarrollo de Aplicaciones Web

Mgter. Jos Sulla Torres


Sesin 5: MySQL

I. OBJETIVOS

- Conocer los fundamentos de MySQL
- Utilizar los conceptos de MySQL para manipular base de datos.

II. TEMAS A TRATAR

MySQL

III. MARCO TEORICO

MySQL es un sistema de gestin de bases de datos relacional, multihilo y multiusuario. El
navegador web construye un modelo de la pgina web (el documento) que incluye todos los
objetos de la pgina (etiquetas, texto, etc.)
MySQL es una base de datos muy rpida en la lectura cuando utiliza el motor no transaccional
MyISAM, pero puede provocar problemas de integridad en entornos de alta concurrencia en la
modificacin. En aplicaciones web hay baja concurrencia en la modificacin de datos y en
cambio el entorno es intensivo en lectura de datos, lo que hace a MySQL ideal para este tipo de
aplicaciones.

IV. ACTIVIDADES (La prctica tiene una duracin de 2 horas)
1. En el administrador de WampServer elija el modo de trabajo en modo consola para MySQL




2. En la ventana de consola de MySQL presione Enter cuando le pida el password. Le dar la
bienvenida como en la figura:

Laboratorio de Desarrollo de Aplicaciones Web
Mgter. Jos Sulla Torres


3. Muestre las bases de datos creadas :

mysql > SHOWdat abases;



Creacin de una Base de datos
4. Cree una Base de datos con el siguiente comando:

CREATE DATABASE publ i cat i ons;


Creacin de usuarios
5. Cree una usuario con el siguiente comando:

GRANT ALL ON publ i cat i ons. * TO ' j i m' @' l ocal host ' I DENTI FI ED BY
' mypasswd' ;
Laboratorio de Desarrollo de Aplicaciones Web
Mgter. Jos Sulla Torres
Creacin de una tabla
1. Ponga en uso a la base de datos publications

USE publ i cat i ons;

2. Cree una tabla con el siguiente comando:

CREATE TABLE cl assi cs (
aut hor VARCHAR( 128) ,
t i t l e VARCHAR( 128) ,
t ype VARCHAR( 16) ,
year CHAR( 4) ) ENGI NE MyI SAM;

3. Verifique la creacin de la tabla:

DESCRI BE cl assi cs;



Agregar una nueva columna

4. Agregue una columna id con autoincremento:

ALTER TABLE cl assi cs ADD i d I NT UNSI GNED NOT NULL AUTO_I NCREMENT
KEY;
5. Verifique la adicin de la columna en la tabla:

DESCRI BE cl assi cs;
Laboratorio de Desarrollo de Aplicaciones Web
Mgter. Jos Sulla Torres

Eliminar una columna

6. Elimine una columna con el siguiente comando:

ALTER TABLE cl assi cs DROP i d;

Insertar datos a la tabla

7. Inserte datos a la tabla con el comando INSERT:

I NSERT I NTO cl assi cs( aut hor , t i t l e, t ype, year )
VALUES( ' Mar k Twai n' , ' The Advent ur es of Tom
Sawyer ' , ' Fi ct i on' , ' 1876' ) ;
I NSERT I NTO cl assi cs( aut hor , t i t l e, t ype, year )
VALUES( ' J ane Aust en' , ' Pr i de and Pr ej udi ce' , ' Fi ct i on' , ' 1811' ) ;
I NSERT I NTO cl assi cs( aut hor , t i t l e, t ype, year )
VALUES( ' Char l es Dar wi n' , ' The Or i gi n of Speci es' , ' Non-
Fi ct i on' , ' 1856' ) ;
I NSERT I NTO cl assi cs( aut hor , t i t l e, t ype, year )
VALUES( ' Char l es Di ckens' , ' The Ol d Cur i osi t y
Shop' , ' Fi ct i on' , ' 1841' ) ;
I NSERT I NTO cl assi cs( aut hor , t i t l e, t ype, year )
VALUES( ' Wi l l i amShakespear e' , ' Romeo and J ul i et ' , ' Pl ay' , ' 1594' ) ;

8. Verifique la insercin con el comando SELECT:

SELECT * FROM cl assi cs;


Laboratorio de Desarrollo de Aplicaciones Web
Mgter. Jos Sulla Torres
Renombrar una tabla

9. Renombre la tabla classics por pre1900:

ALTER TABLE cl assi cs RENAME pr e1900;

10. Vuelva a renombrar con el nombre original:

ALTER TABLE pr e1900 RENAME cl assi cs;

Cambiar el tipo de dato de una columna

11. Cambie el tipo de dato de la columna year a smallint:

ALTER TABLE cl assi cs MODI FY year SMALLI NT;

Agregar una nueva columna

12. Agregue una columna pages:

ALTER TABLE cl assi cs ADD pages SMALLI NT UNSI GNED;


Renombrar una columna

13. Renombre la columna type por category:

ALTER TABLE cl assi cs CHANGE t ype cat egor y VARCHAR( 16) ;


Laboratorio de Desarrollo de Aplicaciones Web
Mgter. Jos Sulla Torres
Eliminar una tabla

14. Cree una nueva tabla disposable, luego elimnela con DROP TABLE:

CREATE TABLE di sposabl e( t r ash I NT) ;
DESCRI BE di sposabl e;
DROP TABLE di sposabl e;
SHOWt abl es;

ndices

15. Agregue los ndices a la tabla classics:

ALTER TABLE cl assi cs ADD I NDEX( aut hor ( 20) ) ;
ALTER TABLE cl assi cs ADD I NDEX( t i t l e( 20) ) ;
ALTER TABLE cl assi cs ADD I NDEX( cat egor y( 4) ) ;
ALTER TABLE cl assi cs ADD I NDEX( year ) ;
DESCRI BE cl assi cs;


Crear una clave primaria isbn

16. Llene la columna isbn utilizando UPDATE:

ALTER TABLE cl assi cs ADD i sbn CHAR( 13) ;
UPDATE cl assi cs SET i sbn=' 9781598184891' WHERE year =' 1876' ;
UPDATE cl assi cs SET i sbn=' 9780582506206' WHERE year =' 1811' ;
UPDATE cl assi cs SET i sbn=' 9780517123201' WHERE year =' 1856' ;
UPDATE cl assi cs SET i sbn=' 9780099533474' WHERE year =' 1841' ;
UPDATE cl assi cs SET i sbn=' 9780192814968' WHERE year =' 1594' ;
ALTER TABLE cl assi cs ADD PRI MARY KEY( i sbn) ;
DESCRI BE cl assi cs;

Crear un ndice FULLTEXT

17. Llene la columna isbn utilizando UPDATE:

ALTER TABLE cl assi cs ADD FULLTEXT( aut hor , t i t l e) ;


Consultas a una bases de datos:
SELECT

1. Seleccione algunos campos de la tabla:

SELECT aut hor , t i t l e FROM cl assi cs;
SELECT t i t l e, i sbn FROM cl assi cs;

Laboratorio de Desarrollo de Aplicaciones Web
Mgter. Jos Sulla Torres
SELECT COUNT

2. Cuente el nmero de registros de la tabla:

SELECT COUNT( *) FROM cl assi cs;

SELECT DISTINCT

3. Agregue un nuevo registro a la tabla:

I NSERT I NTO cl assi cs( aut hor , t i t l e, cat egor y, year , i sbn)
VALUES( ' Char l es Di ckens' , ' Li t t l e Dor r i t ' , ' Fi ct i on' , ' 1857' ,
' 9780141439969' ) ;
4. Liste al campo author sin elementos repetidos:

SELECT DI STI NCT aut hor FROM cl assi cs;

WHERE

5. Retorna los registros que cumplan la condicin:

SELECT aut hor , t i t l e FROM cl assi cs WHERE aut hor =" Mar k Twai n" ;

LIKE

6. Busca en partes de una cadena:

SELECT aut hor , t i t l e FROM cl assi cs WHERE aut hor LI KE " Char l es%";
SELECT aut hor , t i t l e FROM cl assi cs WHERE t i t l e LI KE " %Speci es" ;
SELECT aut hor , t i t l e FROM cl assi cs WHERE t i t l e LI KE " %and%";

DELETE

7. Elimine el registro que tenga como ttulo Little Dorrit:

DELETE FROM cl assi cs WHERE t i t l e=' Li t t l e Dor r i t ' ;

LIMIT

8. Seleccione los tres primeros registros de la tabla classics:

SELECT aut hor , t i t l e FROM cl assi cs LI MI T 3;

9. Seleccione dos registros a partir del registro 1:

SELECT aut hor , t i t l e FROM cl assi cs LI MI T 1, 2;

Laboratorio de Desarrollo de Aplicaciones Web
Mgter. Jos Sulla Torres
10. Seleccione un registro a partir del registro 3:

SELECT aut hor , t i t l e FROM cl assi cs LI MI T 3, 1;

MATCH ... AGAINST

11. Seleccione los registros que incluya la palabra and:

SELECT aut hor , t i t l e FROM cl assi cs WHERE MATCH( aut hor , t i t l e)
AGAI NST( ' and' ) ;

12. Seleccione los registros que incluyan las palabras old shop:

SELECT aut hor , t i t l e FROM cl assi cs WHERE MATCH( aut hor , t i t l e)
AGAI NST( ' ol d shop' ) ;

13. Seleccione los registros que incluyan las palabras tom sawyer:

SELECT aut hor , t i t l e FROM cl assi cs WHERE MATCH( aut hor , t i t l e)
AGAI NST( ' t omsawyer ' ) ;

MATCH ... AGAINST en modo Boolean

14. Seleccione los registros que incluya la palabra charles y que no incluyan species:

SELECT aut hor , t i t l e FROM cl assi cs WHERE MATCH( aut hor , t i t l e)
AGAI NST( ' +char l es - speci es' I N BOOLEAN MODE) ;

SELECT aut hor , t i t l e FROM cl assi cs WHERE MATCH( aut hor , t i t l e)
AGAI NST( ' " or i gi n of "' I N BOOLEAN MODE) ;

UPDATE SET

15. Cambie el nombre del autor:

UPDATE cl assi cs SET aut hor =' Mar k Twai n ( Samuel Langhor ne
Cl emens) ' WHERE aut hor =' Mar k Twai n' ;

16. Cambie el nombre de la categora:

UPDATE cl assi cs SET cat egor y=' Cl assi c Fi ct i on'
WHERE cat egor y=' Fi ct i on' ;

ORDER BY

17. Retorne el autor y ttulo ordenado por autor:

Laboratorio de Desarrollo de Aplicaciones Web
Mgter. Jos Sulla Torres
SELECT aut hor , t i t l e FROM cl assi cs ORDER BY aut hor ;

18. Retorne el autor y ttulo ordenado descendentemente por title :

SELECT aut hor , t i t l e FROM cl assi cs ORDER BY t i t l e DESC;

GROUP BY

19. Agrupe los registros por categora, mostrando la categora y la cantidad segn autor:

SELECT cat egor y, COUNT( aut hor ) FROM cl assi cs GROUP BY cat egor y;

Uniendo Tablas

20. Cree una nueva tabla customer y agregue valores a los campos:

CREATE TABLE cust omer s (
name VARCHAR( 128) ,
i sbn VARCHAR( 13) ,
PRI MARY KEY ( i sbn) ) ENGI NE MyI SAM;
I NSERT I NTO cust omer s( name, i sbn)
VALUES( ' J oe Bl oggs' , ' 9780099533474' ) ;
I NSERT I NTO cust omer s( name, i sbn)
VALUES( ' Mar y Smi t h' , ' 9780582506206' ) ;
I NSERT I NTO cust omer s( name, i sbn)
VALUES( ' J ack Wi l son' , ' 9780517123201' ) ;
SELECT * FROM cust omer s;

21. Una la tabla classics y customer por medio del campo isbn:

SELECT name, aut hor , t i t l e f r omcust omer s, cl assi cs
WHERE cust omer s. i sbn=cl assi cs. i sbn;



Natural Join

22. Lo anterior se puede realizar con Natural J oin:

SELECT name, aut hor , t i t l e FROM cust omer s NATURAL J OI N cl assi cs;
Laboratorio de Desarrollo de Aplicaciones Web
Mgter. Jos Sulla Torres

V. Ejercicios

1. Cree una base de datos Acadmico, con dos tablas Alumno y Cursos realice las operaciones
indicas en la gua.

VI. Cuestionario

1. Qu es MySQL?
2. Cules son los pasos para la creacin de base de datos, tablas, y realizacin de
consultas?

VII. Bibliografa y referencias

Robin Nixon, PHP, MYSQL, J avaScript, CSS & HTML5 , OReilly, 2014

Vous aimerez peut-être aussi