Sei sulla pagina 1di 9

Computacin e Informtica

INTRODUCCION A MYSQL

TEMAS A TRATAR

Qu es SQL y MySQL?
Show databases
Creacin de una tabla y mostrar sus campos
Instruccin Insert
Tipos de datos bsicos de los campos de una tabla
Instruccin select
Instruccin where

1. INTRODUCCIN.
SQL, Structure Query Language (Lenguaje de Consulta Estructurado) es un lenguaje de programacin
para trabajar con base de datos relacionales como MySQL, Oracle, etc.
MySQL es un interpretador de SQL, es un servidor de base de datos.
MySQL permite crear base de datos y tablas, insertar datos, modificarlos, eliminarlos, ordenarlos, hacer
consultas y realizar muchas operaciones, etc., resumiendo: administrar bases de datos.
Ingresando instrucciones en la lnea de comandos o embebidas en un lenguaje como PHP nos
comunicamos con el servidor. Cada sentencia debe acabar con punto y coma (;).
La sensibilidad a maysculas y minsculas, es decir, si hace diferencia entre ellas, depende del sistema
operativo, Windows no es sensible, pero Linux s. Por ejemplo Windows interpreta igualmente las
siguientes sentencias:
create database administracion;
Create DataBase administracion;
Pero Linux interpretar como un error la segunda.
Se recomienda usar siempre minsculas
2. SHOW DATABASES
Una base de datos es un conjunto de tablas.
Una base de datos tiene un nombre con el cual accederemos a ella.
Para que el servidor nos muestre las bases de datos existentes, se lo solicitamos enviando la instruccin:
show databases;
Ejercicio 2-1: Mostrar las bases de datos existentes en su servidor Local
show databases;

MySql

-1-

Computacin e Informtica
3. CREACIN DE UNA TABLA Y MOSTRAR SUS CAMPOS (CREATE TABLE - SHOW TABLES DESCRIBE - DROP TABLE)
Una base de datos almacena sus datos en tablas.
Una tabla es una estructura de datos que organiza los datos en columnas y filas; cada columna es un
campo (o atributo) y cada fila, un registro. La interseccin de una columna con una fila, contiene un dato
especfico, un solo valor.
Cada registro contiene un dato por cada columna de la tabla.
Cada campo (columna) debe tener un nombre. El nombre del campo hace referencia a la informacin
que almacenar.
Cada campo (columna) tambin debe definir el tipo de dato que almacenar.
Grficamente ac tenemos la tabla usuarios, que contiene dos campos llamados: nombre y clave.
nombre
clave
MarioPerez
Marito
MariaGarcia
Mary
DiegoRodriguez
z8080
Luego tenemos tres registros almacenados en esta tabla, el primero almacena en el campo nombre el
valor "MarioPerez" y en el campo clave "Marito", y as sucesivamente con los otros dos registros.
Las tablas forman parte de una base de datos.
Para ver las tablas existentes en una base de datos ingresamos:
show tables;
Deben aparecer todas las tablas que han creado en la base de datos activa.
Al crear una tabla debemos resolver qu campos (columnas) tendr y que tipo de datos almacenarn
cada uno de ellos, es decir, su estructura.
La tabla debe ser definida con un nombre que la identifique y con el cual accederemos a ella.
Creamos una tabla llamada "usuarios", ingresamos:
create table usuarios (
nombre varchar(30),
clave varchar(10)
);
Si intentamos crear una tabla con un nombre ya existente (existe otra tabla con ese nombre), mostrar
un mensaje de error indicando que la accin no se realiz porque ya existe una tabla con el
mismo nombre.
Para ver las tablas existentes en una base de datos tipeamos nuevamente:
show tables;
Ahora aparece "usuarios" entre otras que ya pueden estar creadas.
Cuando se crea una tabla debemos indicar su nombre y definir sus campos con su tipo de dato. En esta
tabla "usuarios" definimos 2 campos:

MySql

-2-

Computacin e Informtica
-

nombre: que contendr una cadena de hasta 30 caracteres de longitud, que almacenar el nombre de
usuario y
clave: otra cadena de caracteres de 10 de longitud, que guardar la clave de cada usuario.

Cada usuario ocupar un registro de esta tabla, con su respectivo nombre y clave.
Para ver la estructura de una tabla usamos el comando "describe" junto al nombre de la tabla:
describe usuarios;
Aparece lo siguiente:
Field

Type

Null

nombre
clave

varchar(30)
varchar(10)

YES
YES

Esta es la estructura de la tabla "usuarios"; nos muestra cada campo, su tipo, lo que ocupa en bytes y
otros datos como la aceptacin de valores nulos etc, que veremos ms adelante en detalle.
Para eliminar una tabla usamos "drop table". Tipeamos:
drop table usuarios;
Si tipeamos nuevamente:
drop table usuarios;
Aparece un mensaje de error, indicando que no existe, ya que intentamos borrar una tabla inexistente.
Para evitar este mensaje podemos tipear:
drop table if exists usuarios;
En la sentencia precedente especificamos que elimine la tabla "usuarios" si existe.
Ejercicio 3-1.
Crear la tabla usuarios con los campos nombre y clave. Previamente borrar la tabla usuarios si ya existe
en el servidor. Finalmente mostrar la estructura de la tabla usuarios que acabamos de crear.
drop table if exists usuarios;
create table usuarios (
nombre varchar(30),
clave varchar(10)
);
describe usuarios;
Ejercicio 3-2.
A) Queremos almacenar los datos de nuestros amigos.
1- Elimine la tabla "agenda" si existe:
drop table if exists agenda;
2- Cree una tabla llamada "agenda", debe tener los siguientes campos:
domicilio varchar(30) y telefono varchar(11)

MySql

nombre varchar(20)

-3-

Computacin e Informtica
create table agenda(
nombre varchar(20),
domicilio varchar(30),
telefono varchar(11)
);
3- Intente crearla nuevamente. Aparece mensaje de error.
4- Visualice las tablas existentes (show tables).
5- Visualice la estructura de la tabla "agenda" (describe agenda).
6- Elimine la tabla, si existe (drop table, if exists).
7- Intente eliminar la tabla sin la clusula if exists (drop table agenda).
Debe aparecer un mensaje de error cuando no existe la tabla.
4. CARGA DE REGISTROS A UNA TABLA Y SU RECUPERACIN (INSERT INTO - SELECT)
Un registro es una fila de la tabla que contiene los datos propiamente dichos. Cada registro tiene un dato
por cada columna.
Recordemos como crear la tabla "usuarios":
create table usuarios (
nombre varchar(30),
clave varchar(10)
);
Al ingresar los datos de cada registro debe tenerse en cuenta la cantidad y el orden de los campos.
Ahora vamos a agregar un registro a la tabla:
insert into usuarios (nombre, clave) values ('MarioPerez','Marito');
Usamos "insert into". Especificamos los nombres de los campos entre parntesis y separados por comas
y luego los valores para cada campo, tambin entre parntesis y separados por comas.
La tabla usuarios ahora la podemos graficar de la siguiente forma:
nombre
MarioPerez

clave
Marito

Es importante ingresar los valores en el mismo orden en que se nombran los campos, si ingresamos los
datos en otro orden, nos aparece un mensaje de error y los datos se guardan de modo incorrecto.
Note que los datos ingresados, como corresponden a campos de cadenas de caracteres se colocan entre
comillas simples. Las comillas simples son OBLIGATORIAS.
Para ver los registros de una tabla usamos "select":
select nombre,clave from usuarios;
Aparece un registro.

MySql

-4-

Computacin e Informtica
El comando "select" recupera los registros de una tabla. Luego del comando select indicamos los
nombres de los campos a rescatar.
Ejercicio 4-1
Insertar tres registros en la tabla usuarios y luego mostrar todos los registros de la tabla.

insert into usuarios(nombre,clave) values ('MarioPerez','Marito');


insert into usuarios(nombre,clave) values ('MariaGarcia','Mary');
insert into usuarios(nombre,clave) values ('DiegoRodriguez','z8080');
select nombre,clave from usuarios;

Ejercicio 4-2
Trabaje con la tabla "agenda".
1. Ingrese los siguientes registros:
insert into agenda (nombre, domicilio, telefono) values ('Alberto Mores','Colon 123','4234567');
insert into agenda (nombre, domicilio, telefono) values ('Juan Torres','Avellaneda 135','4458787');
2- Seleccione y muestre todos los registros de la tabla:
select nombre, domicilio, telefono from agenda;
5. TPOS DE DATOS BSICOS DE UN CAMPO DE UNA TABLA.
Ya explicamos que al crear una tabla debemos resolver qu campos (columnas) tendr y que tipo de
datos almacenar cada uno de ellos, es decir, su estructura. Estos son algunos tipos de datos bsicos:
-

varchar: se usa para almacenar cadenas de caracteres. Una cadena es una secuencia de caracteres.
Se coloca entre comillas (simples): 'Hola'. El tipo "varchar" define una cadena de longitud variable en
la cual determinamos el mximo de caracteres. Para almacenar cadenas de hasta 30 caracteres,
definimos un campo de tipo varchar(30). Si asignamos una cadena de caracteres de mayor longitud.
que la definida, la cadena se corta. Por ejemplo, si definimos un campo de tipo varchar(10) y
le asignamos la cadena 'Buenas tardes', se almacenar 'Buenas tar' ajustndose a la longitud de
10
caracteres.

integer: se usa para guardar valores numricos enteros, de -2000000000 a 2000000000 aprox.
Definimos campos de este tipo cuando queremos representar, por ejemplo, cantidades.

float: se usa para almacenar valores numricos decimales. Se utiliza como separador el punto (.).
Definimos campos de este tipo para precios, por ejemplo.

Antes de crear una tabla debemos pensar en sus campos y optar por el tipo de dato adecuado para cada
uno de ellos. Por ejemplo, si en un campo almacenaremos nmeros enteros, el tipo "float" sera
una mala eleccin; si vamos a guardar precios, el tipo "float" es correcto, no as "integer" que
no tiene decimales.

MySql

-5-

Computacin e Informtica
Ejercicio 5-1
Para almacenar informacin de los libros de una librera necesitamos los siguientes campos:
-

titulo, cadena de caracteres de 40 de longitud,


autor, cadena de caracteres de 30 de longitud,
editorial, caracteres de 15 de longitud,
precio, valor numrico con decimales y
cantidad, valor numrico entero.

Al crear la tabla, entonces, elegimos el tipo de dato ms adecuado para cada campo:
create table libros(
titulo varchar(40),
autor varchar(20),
editorial varchar(15),
precio float,
cantidad integer
);
Vemos la estructura de la tabla:
describe libros;
Ingresamos algunos registros:
insert into libros (titulo,autor,editorial,precio,cantidad)
values ('El aleph','Borges','Emece',45.50,100);
insert into libros (titulo,autor,editorial,precio,cantidad)
values ('Alicia en el pais de las maravillas','Lewis Carroll',
'Planeta',25,200);
insert into libros (titulo,autor,editorial,precio,cantidad)
values ('Matematica estas ahi','Paenza','Planeta',15.8,200);
Veamos los registros cargados:
select * from libros;
Tengamos en cuenta que es lo mismo escribir:
select codigo,titulo,autor,precio from libros;
Es una forma resumida de indicar que seleccione todos los campos de la tabla.
Ejercicio 5-2.
Un videoclub que alquila pelculas en video almacena la informacin de sus pelculas en una tabla
llamada "peliculas"; para cada pelcula necesita los siguientes datos:
-

nombre, cadena de caracteres de 20 de longitud,


actor, cadena de caracteres de 20 de longitud,
duracin, valor numrico entero.
cantidad de copias: valor entero.

2- Cree la tabla eligiendo el tipo de dato adecuado para cada campo:

MySql

-6-

Computacin e Informtica
create table peliculas(
nombre varchar(20),
actor varchar(20),
duracion integer,
cantidad integer
);
3- Vea la estructura de la tabla:
describe peliculas;
4- Ingrese los siguientes registros:
insert into peliculas (nombre, actor, duracion, cantidad)
values ('Mision imposible','Tom Cruise',120,3);
insert into peliculas (nombre, actor, duracion, cantidad)
values ('Mision imposible 2','Tom Cruise',180,2);
insert into peliculas (nombre, actor, duracion, cantidad)
values ('Mujer bonita','Julia R.',90,3);
insert into peliculas (nombre, actor, duracion, cantidad)
values ('Elsa y Fred','China Zorrilla',90,2);
5- Muestre todos los registros:
select * from peliculas;
6 - RECUPERACIN DE ALGUNOS CAMPOS (SELECT)
Hemos aprendido cmo ver todos los registros de una tabla:
select * from libros;
El comando "select" recupera los registros de una tabla. Con el asterisco (*) indicamos que seleccione
todos los campos de la tabla que nombramos.
Podemos especificar el nombre de los campos que queremos ver separndolos por comas:
select titulo,autor,editorial from libros;
En la sentencia anterior la consulta mostrar slo los campos "titulo", "autor" y "editorial". En la
siguiente sentencia, veremos los campos correspondientes al ttulo y precio de todos los libros:
select titulo,precio from libros;
Para ver solamente la editorial y la cantidad de libros tipeamos:
select editorial,cantidad from libros;
Ejercicio 6-1
Trabajamos con la tabla "libros" que almacena los datos de los libros de una librera.
Para ver todos los campos de una tabla tipeamos:
select * from libros;
Con el asterisco (*) indicamos que seleccione todos los campos de la tabla.
Para ver solamente el ttulo, autor y editorial de todos los libros especificamos los nombres de los
campos separados por comas:
select titulo,autor,editorial from libros;
La siguiente sentencia nos mostrar los ttulos y precios de todos los libros:

MySql

-7-

Computacin e Informtica
select titulo,precio from libros;
Para ver solamente la editorial y la cantidad de libros tipeamos:
select editorial,cantidad from libros;
select
select
select
select

* from libros;
titulo,autor,editorial from libros;
titulo,precio from libros;
editorial,cantidad from libros;

Ejercicio 6-2
Un videoclub que alquila pelculas en video almacena la informacin de sus pelculas en alquiler en una
tabla llamada "peliculas".
1- Realice un "select" mostrando solamente el ttulo y actor de todas las pelculas:
select titulo,actor from peliculas;
2- Muestre el ttulo y duracin de todas las peliculas.
3- Muestre el ttulo y la cantidad de copias.
7 - RECUPERACIN DE REGISTROS ESPECFICOS (SELECT - WHERE)
El comando "select" recupera los registros de una tabla. Detallando los nombres de los campos
separados por comas, indicamos que seleccione todos los campos de la tabla que nombramos.
Existe una clusula, "where" que es opcional, con ella podemos especificar condiciones para la consulta
"select". Es decir, podemos recuperar algunos registros, slo los que cumplan con ciertas condiciones
indicadas con la clusula "where". Por ejemplo, queremos ver el usuario cuyo nombre es "MarioPerez",
para ello utilizamos "where" y luego de ella, la condicin:
select nombre, clave from usuarios where nombre='MarioPerez';
Para las condiciones se utilizan operadores relacionales (tema que trataremos ms adelante en detalle).
El signo igual(=) es un operador relacional. Para la siguiente seleccin de registros especificamos una
condicin que solicita los usuarios cuya clave es igual a 'bocajunior':
select nombre, clave from usuarios where clave='bocajunior';
Si ningn registro cumple la condicin establecida con el "where", no aparecer ningn registro.
Ejercicio 7-1
1. Utilizando la tabla usuarios. Realizaremos una consulta especificando una condicin, queremos ver el
usuario cuyo nombre es "Leonardo":
select nombre, clave from usuarios where nombre='Leonardo';
2. Realizamos un "select" de los usuarios cuya clave es 'bocajunior':
select nombre, clave from usuarios where clave='bocajunior';
3. Realizamos un "select" de los usuarios cuya clave es 'river':

MySql

-8-

Computacin e Informtica
select nombre, clave from usuarios where clave='river';
Si en caso no aparece ninguno registro, pues ningn registro cumple la condicin.
select
select
select
select

nombre,
nombre,
nombre,
nombre,

clave
clave
clave
clave

from
from
from
from

usuarios;
usuarios where nombre='Leonardo';
usuarios where clave='bocajunior';
usuarios where clave='river';

Ejercicio 7-2
1- Uitilizando la tabla Agenda, ingrese los siguientes registros:
'Alberto Mores','Colon 123','4234567',
'Juan Torres','Avellaneda 135','4458787',
'Mariana Lopez','Urquiza 333','4545454',
'Fernando Lopez','Urquiza 333','4545454'.
2- Seleccione todos los registros de la tabla. (select).
3- Seleccione el registro cuyo nombre sea 'Juan Torres'.
4- Seleccione el registro cuyo domicilio sea 'Colon 123'.
5- Muestre los datos de quienes tengan el telfono '4545454'.

MySql

-9-

Potrebbero piacerti anche