73
BASE DE DATOS BASE DE DATOS DINAMICAS DINAMICAS LIC. SAUL GARNICA ESPINOZA LIC. SAUL GARNICA ESPINOZA

Base de datos dinamicas

Embed Size (px)

Citation preview

Page 1: Base de datos dinamicas

BASE DE DATOS BASE DE DATOS DINAMICASDINAMICAS

LIC. SAUL GARNICA ESPINOZALIC. SAUL GARNICA ESPINOZA

Page 2: Base de datos dinamicas

SQL, Structure Query Language SQL, Structure Query Language (Lenguaje de Consulta Estructurado)(Lenguaje de Consulta Estructurado)

es un lenguaje de programación para trabajar con es un lenguaje de programación para trabajar con

base de datos relacionales comobase de datos relacionales como

MySQL, Oracle, etc.MySQL, Oracle, etc.

Page 3: Base de datos dinamicas

MySQLMySQL

interprete de SQLinterprete de SQL

es un servidor de base de datos.es un servidor de base de datos.

Page 4: Base de datos dinamicas

MySQL permite crear base de datos y MySQL permite crear base de datos y tablas, insertar datos, modificarlos, tablas, insertar datos, modificarlos,

eliminarlos, ordenarlos, hacer consultas y eliminarlos, ordenarlos, hacer consultas y realizar muchas operaciones, etc. realizar muchas operaciones, etc.

Administra Bases de Datos.Administra Bases de Datos.

Page 5: Base de datos dinamicas

Ingresando instrucciones en la línea de Ingresando instrucciones en la línea de comandos o embebidas en un lenguaje comandos o embebidas en un lenguaje

como PHP nos comunicamos con el como PHP nos comunicamos con el servidor. servidor.

Cada sentencia debe acabar con punto Cada sentencia debe acabar con punto y coma (;).y coma (;).

Page 6: Base de datos dinamicas

La sensibilidad a mayúsculas y minúsculas, es decir, si hace La sensibilidad a mayúsculas y minúsculas, es decir, si hace diferencia entre ellas, depende del sistema operativo, diferencia entre ellas, depende del sistema operativo,

Windows no es sensible, pero Linux si. Windows no es sensible, pero Linux si. Por ejemplo Windows interpreta igualmente las siguientes Por ejemplo Windows interpreta igualmente las siguientes

sentencias:sentencias:

create database administracion; create database administracion; Create DataBase administracion; Create DataBase administracion;

Pero Linux interpretará como un error la segunda.Pero Linux interpretará como un error la segunda.Se recomienda usar siempre minúsculas. Se recomienda usar siempre minúsculas.

Es más el sitio mysqlya.com.ar está instalado sobre un Es más el sitio mysqlya.com.ar está instalado sobre un servidor Linux por lo que todos los ejercicios deberán servidor Linux por lo que todos los ejercicios deberán

respetarse mayúsculas y minúsculas.respetarse mayúsculas y minúsculas.

Page 7: Base de datos dinamicas

Entrar al subdirectorioEntrar al subdirectorioAppServAppServ

Page 8: Base de datos dinamicas

ENTRAR AL SUBDIRECTORIO ENTRAR AL SUBDIRECTORIO Apperv\MySQLApperv\MySQL

Page 9: Base de datos dinamicas

Entrar al subdirectorio Entrar al subdirectorio AppServ\MySQL\binAppServ\MySQL\bin

Page 10: Base de datos dinamicas

Entrar como administradorEntrar como administrador

Page 11: Base de datos dinamicas

ENTRAR COMO ROOT PIDE EL PASSWORDENTRAR COMO ROOT PIDE EL PASSWORD

mysql –u root -pmysql –u root -p

Page 12: Base de datos dinamicas

ENTRANDO A MySQLENTRANDO A MySQL

Page 13: Base de datos dinamicas

VISUALIZA LAS BASES DE DATOSVISUALIZA LAS BASES DE DATOS show databases;show databases;

Page 14: Base de datos dinamicas

Crea una base de datosCrea una base de datoscreate database agenda;create database agenda;

Page 15: Base de datos dinamicas

Visualizar las bases de datosVisualizar las bases de datos

Page 16: Base de datos dinamicas

Borra una base de datosBorra una base de datosdrop database agenda;drop database agenda;

Page 17: Base de datos dinamicas

Consultas con Consultas con select version(),user();select version(),user();

Page 18: Base de datos dinamicas

Crear tablas y modificar bases de datos se Crear tablas y modificar bases de datos se

utilizautiliza use agenda;use agenda;

Page 19: Base de datos dinamicas

Crear una tabla en la base de datos Crear una tabla en la base de datos agendaagenda

Page 20: Base de datos dinamicas

create table amigos (nombre create table amigos (nombre varchar (30),varchar (30),

apellidos varchar (30),apellidos varchar (30),direccion varchar (50),direccion varchar (50),telecasa varchar(10),telecasa varchar(10),telemovil varchar (10),telemovil varchar (10),

edad tinyint); edad tinyint);

Page 21: Base de datos dinamicas

Visualizar la tabla generadaVisualizar la tabla generadashow tables;show tables;

Page 22: Base de datos dinamicas

Show tables;Show tables;

Page 23: Base de datos dinamicas

Crear otra tabla cumpleCrear otra tabla cumplecreate table cumple ();create table cumple ();

Page 24: Base de datos dinamicas

Visualizamos las tablasVisualizamos las tablasshow tables;show tables;

Page 25: Base de datos dinamicas

Create table cumple Create table cumple (nombre varchar (30),(nombre varchar (30),apellidos varchar (30),apellidos varchar (30),

fecha date);fecha date);

Page 26: Base de datos dinamicas

Modo graficoModo graficohttp://localhost/phpmyadminhttp://localhost/phpmyadmin

Page 27: Base de datos dinamicas
Page 28: Base de datos dinamicas

Crear bases de datos y tablas modo Crear bases de datos y tablas modo graficografico

Page 29: Base de datos dinamicas

Crear una tablaCrear una tabla

Page 30: Base de datos dinamicas
Page 31: Base de datos dinamicas
Page 32: Base de datos dinamicas

Boton continuar para generar la tabla Boton continuar para generar la tabla y grabary grabar

Page 33: Base de datos dinamicas

CREAR CLAVE PRIMARIA EN LA CREAR CLAVE PRIMARIA EN LA TABLA AMIGOSTABLA AMIGOS

Page 34: Base de datos dinamicas

Agregar una clave primaria de modo Agregar una clave primaria de modo texto MySQLtexto MySQL

Page 35: Base de datos dinamicas

Alter table cumple Alter table cumple ADD PRIMARY KEYADD PRIMARY KEY

(apellidos);(apellidos);

Page 36: Base de datos dinamicas

Agregar un campo a la tabla cumpleAgregar un campo a la tabla cumple

Page 37: Base de datos dinamicas

Insertar campos a tabla amigosInsertar campos a tabla amigos

Page 38: Base de datos dinamicas
Page 39: Base de datos dinamicas

Se crea el campo horoscopoSe crea el campo horoscopo

Page 40: Base de datos dinamicas

Tipo de Campo Tamaño de Almacenamiento

TINYINT 1 byte

SMALLINT 2 bytes

MEDIUMINT 3 bytes

INT 4 bytes

INTEGER 4 bytes

BIGINT 8 bytes

FLOAT(X) 4 ú 8 bytes

FLOAT 4 bytes

DOUBLE 8 bytes

DOUBLE PRECISION 8 bytes

REAL 8 bytes

DECIMAL(M,D) M+2 bytes sí D > 0, M+1 bytes sí D = 0

NUMERIC(M,D) M+2 bytes if D > 0, M+1 bytes if D = 0

Page 41: Base de datos dinamicas

BASE DE DATOS BASE DE DATOS DINAMICADINAMICA

CREAR UNA BASE DE CREAR UNA BASE DE DATOS CON MYSQLDATOS CON MYSQL

PHPFACILPHPFACIL

Page 42: Base de datos dinamicas

CREATE TABLE alumnos CREATE TABLE alumnos

( codigo int(11) NOT NULL auto_increment,( codigo int(11) NOT NULL auto_increment,

nombre varchar(40) default NULL, nombre varchar(40) default NULL,

mail varchar(50) default NULL, mail varchar(50) default NULL,

codigocurso int(11) default NULL,codigocurso int(11) default NULL,

PRIMARY KEY (`codigo`) ) ;PRIMARY KEY (`codigo`) ) ;

Page 43: Base de datos dinamicas

INSERTAR REGISTROS EN INSERTAR REGISTROS EN BASE DE DATOSBASE DE DATOS

Para añadir datos en la tabla empleamos el Para añadir datos en la tabla empleamos el comando MySQL llamado insert.comando MySQL llamado insert.

Necesitamos dos páginas para este proceso, una Necesitamos dos páginas para este proceso, una será el formulario de carga de datos y la será el formulario de carga de datos y la

siguiente será la que efectúe la inserción en la siguiente será la que efectúe la inserción en la tabla.tabla.

Insertar.phpInsertar.phpInsertar2.phpInsertar2.php

Page 44: Base de datos dinamicas

<html><head><title>Problema</title></head><body><h1>Alta de Alumnos</h1><form action="insertar2.php" method="post">Ingrese nombre:<input type="text" name="nombre"><br>Ingrese mail:<input type="text" name="mail"><br>Seleccione el curso:<select name="codigocurso"><option value="1">PHP</option><option value="2">ASP</option><option value="3">JSP</option></select><br><input type="submit" value="Registrar"></form></body></html>

Page 45: Base de datos dinamicas

<html><head><title>INSERTAR ALUMNOS BD</title></head><body><h1>Alta de Alumnos CNAD</h1><form action="insertar2.php" method="post">Ingrese nombre:<input type="text" name="nombre"><br>Ingrese mail:<input type="text" name="mail"><br>

Page 46: Base de datos dinamicas

Seleccione el curso:<select name="codigocurso"><option value="1">PHP</option><option value="2">ASP</option><option value="3">JSP</option></select><br><input type="submit" value="Registrar"></form></body></html>

Page 47: Base de datos dinamicas

<html><head><title>insertar base de datos</title></head><body><?php$conexion=mysql_connect("localhost","root","123") or die("Problemas en la conexion");

mysql_select_db("phpfacil",$conexion) or die("Problemas en la seleccion de la base de datos");

mysql_query("insert into alumnos(nombre,mail,codigocurso) values ('$_REQUEST[nombre]','$_REQUEST[mail]',$_REQUEST[codigocurso])", $conexion) or die("Problemas en el select".mysql_error());

mysql_close($conexion);

echo "El alumno fue dado de alta.";?></body></html>

Page 48: Base de datos dinamicas

<html><head><title>insertar base de datos</title></head><body><?php$conexion=mysql_connect("localhost","root","123") or die("Problemas en la conexion");

mysql_select_db("phpfacil",$conexion) or die("Problemas en la seleccion de la base de datos");

Insetar2.php

Page 49: Base de datos dinamicas

mysql_query("insert into alumnos(nombre,mail,codigocurso) values ('$_REQUEST[nombre]','$_REQUEST[mail]',$_REQUEST[codigocurso])", $conexion) or die("Problemas en el select".mysql_error());

mysql_close($conexion);

echo "El alumno fue dado de alta.";?></body></html>

Page 50: Base de datos dinamicas
Page 51: Base de datos dinamicas

<html><head><title>seleccion de registros</title></head><body><?php$conexion=mysql_connect("localhost","root","123") or die("Problemas en la conexion");mysql_select_db("phpfacil",$conexion) or die("Problemas en la selección de la base de datos");$registros=mysql_query("select codigo,nombre, mail, codigocurso from alumnos",$conexion) or die("Problemas en el select:".mysql_error());while ($reg=mysql_fetch_array($registros)){

Seleccion1.php

Page 52: Base de datos dinamicas

echo "Codigo:".$reg['codigo']."<br>"; echo "Nombre:".$reg['nombre']."<br>"; echo "Mail:".$reg['mail']."<br>"; echo "Curso:"; switch ($reg['codigocurso']) { case 1:echo "PHP"; break; case 2:echo "ASP"; break; case 3:echo "JSP"; break; } echo "<br>"; echo "<hr>";}mysql_close($conexion);?></body></html>

Page 53: Base de datos dinamicas

CONSULTACONSULTA

Page 54: Base de datos dinamicas

html><head><title>Problema</title></head><body><form action="consulta2.php" method="post">Ingrese el mail del alumno a consultar:<input type="text" name="mail"><br><input type="submit" value="buscar"></form></body></html>

Consulta.php

Page 55: Base de datos dinamicas

<html><head><title>Problema</title></head><body><?php$conexion=mysql_connect("localhost","root","123") or die("Problemas en la conexion"); mysql_select_db("phpfacil",$conexion) or die("Problemas en la selección de la base de datos");

$registros=mysql_query("select codigo,nombre, codigocurso from alumnos where mail='$_REQUEST[mail]'",$conexion) or die("Problemas en el select:".mysql_error());if ($reg=mysql_fetch_array($registros))

consulta2.php 1

Page 56: Base de datos dinamicas

{ echo "Nombre:".$reg['nombre']."<br>"; echo "Curso:"; switch ($reg['codigocurso']) { case 1:echo "PHP"; break; case 2:echo "ASP"; break; case 3:echo "JSP"; break; }

Consulta2.php 2

Page 57: Base de datos dinamicas

}else{ echo "No existe un alumno con ese mail.";}mysql_close($conexion);?></body></html>

Consulta2.php 3

Page 58: Base de datos dinamicas

ELIMINAR, BORRAR UN ELIMINAR, BORRAR UN REGISTROREGISTRO

Page 59: Base de datos dinamicas

<html><head><title>Problema</title></head><body><form action="borrar2.php" method="post">Ingrese el mail del alumno a borrar:<input type="text" name="mail"><br><input type="submit" value="buscar"></form></body></html> // borrar.php

Page 60: Base de datos dinamicas

<html><head><title>Problema</title></head><body><?php$conexion=mysql_connect("localhost","root","123") or die("Problemas en la conexion");mysql_select_db("phpfacil",$conexion) or die("Problemas en la selección de la base de datos");$registros=mysql_query("select codigo from alumnos where mail='$_REQUEST[mail]'",$conexion) or die("Problemas en el select:".mysql_error());//borrar2.php 1

Page 61: Base de datos dinamicas

if ($reg=mysql_fetch_array($registros)){ mysql_query("delete from alumnos where mail='$_REQUEST[mail]'",$conexion) or die("Problemas en el select:".mysql_error()); echo "Se efectuó el borrado del alumno con dicho mail.";}else{ echo "No existe un alumno con ese mail.";}mysql_close($conexion);?></body></html> // borrar2.php 2

Page 62: Base de datos dinamicas

Borrar todos los registros Borrar todos los registros de una tablade una tabla

Page 63: Base de datos dinamicas
Page 64: Base de datos dinamicas

<html><head><title>Problema</title></head><body><?php$conexion=mysql_connect("localhost","root","123") or die("Problemas en la conexion");mysql_select_db("phpfacil",$conexion) or die("Problemas en la selección de la base de datos");mysql_query("delete from alumnos",$conexion) or die("Problemas en el select:".mysql_error());echo "Se efectuó el borrado de todos los alumnos.";mysql_close($conexion);?></body></html>

Page 65: Base de datos dinamicas
Page 66: Base de datos dinamicas

Contador de registrosContador de registros

Page 67: Base de datos dinamicas
Page 68: Base de datos dinamicas

COMANDOS BASICOS COMANDOS BASICOS MYSQLMYSQL

Page 69: Base de datos dinamicas

CREAR UNA BASE DE CREAR UNA BASE DE DATOSDATOS

Create database phpfacil;Create database phpfacil;

Page 70: Base de datos dinamicas

USAR UNA BASE DE USAR UNA BASE DE DATOSDATOS

use phpfacil;use phpfacil;

Page 71: Base de datos dinamicas

CREAR UNA TABLACREAR UNA TABLA

create table alumnos;create table alumnos;

Page 72: Base de datos dinamicas

VISUALIZAR BASES DE VISUALIZAR BASES DE DATOSDATOS

show databases;show databases;

Page 73: Base de datos dinamicas

MOSTRAR LAS TABLAS MOSTRAR LAS TABLAS QUE TIENE UNA BASE DE QUE TIENE UNA BASE DE

DATOSDATOS

show tables;show tables;