Comandos MySQL

1-inicializar xampp

2-subir los servicios de apache y MySql

3-cmd

4-cd/xampp/mysql/bin

5-c:\xampp\mysql\bin>mysql -uroot -p

6-MariaDB [(none)]>

como crear una base de datos

-comando create

-sintaxis create database nombre BD;

-ejemplo create database biblioteca;

nota todo comando en mysql termina en punto y coma

mostrar bases de datos que estan creadas

-comando show

-sintaxis:show databases;

-ejemplo:show databases;

Para utilizar una base de datos

Comando use

Sintaxis: use (nombre bd);

comando para crear uan tabla

-comando create

sintaxis

mysql> create table nombre de la tabla (

escribir el nombre del campo, el tipo, el tamaño, si es requerido o no y si es clave primaria

Ejemplo: create table libro(

idlibro char(3) not null primary key,

 titulo char(50) not null,

 nropagina int not null,

precio int not null);

Crear tabla con clave foranea

create table liautedi(

 idlibro char(3) not null,

 codautor char(3) not null, 

codedit char(3) not null,

 foreign key(idlibro) references libro(idlibro) on delete cascade on update cascade,

 foreign key(codautor) references autor(codautor) on delete cascade on update cascade,

 foreign key(codedit) references editorial(codedit) on delete cascade on update cascade);

Como mirar o mostrar la estructura de una tabla

nota: cuando se va crear una tabla relacional hay que tener en cuenta las sig carateristicas:

1-el campo o clave foranea debe llevar el mismo nombre de la tabla principal, si desea puede cambiar el nombre.

2-tiene que ser del mismo tipo que la clave principal.

3-tienen que ser del mismo tamaño que la clave principal.

Como agregar un campo en mysql

comando: add

sintaxis: Alter table [nombre tabla (cierra corchete) add [campo a insertar (no es obligatorio poner corchetes) tipo (tamaño) requerido o no; (los parentesis de tamaño si son necesarios

Insertar despues del campo deseado 

comando add 

Sintaxis Alter table *nombre tabla* add *campo a insertar* tipo (tamaño) requerido o no 

Cambiar nombre del campo: 

Comando: change 

Sintaxis: Alter table (corchetes* nombre de tabla) change (nombre del campo a cambiar) nuevo nombre campo tipo (tamaño) requerido o no; Ejemplo: fvista

Como modificar el tamaño de un campo:

Comando: modify

Sintaxis: Alter table (nombre tabla) modify nombre  del campo tipo (nuevo tamaño) requerido o no;

Ejemplo: 

Alter table autor modify nacionalidad varchar(30) not null;

Eliminar la clave primaria de una tabla:

Comando: drop

Sintaxis: Alter table (nombre tabla) drop primary key;

Ejemplo: Alter table libro drop primary key;

Como definir una nueva clave primaria en una tabla

Comando: modify

Sintaxis: alter table nombre tabla modify nombre del campo tipo (tamaño) not null primary key;

Ejemplo: alter table prueba modify Nombre varchar(40) not null primary key;

Como cambiar el nombre de una tabla

Comando: rename
Sintaxis: alter table nombre tabla rename to nuevonombretabla;
Ejemplo: alter table prueba rename to examen;


Como eliminar una tabla

Comando: drop

Sintaxis: drop table nombretabla;

Ejemplo: drop table examen;

Como insertar registros o informacion a una tabla

Comando: insert

Sintaxis: Insert into (nombre de ta tabla) (campo1, campo2, campo3, campon...)values(valorcampo1, valorcampo2, valorcampo3...campoN);

Nota: si el tipo de campo es char o varchar debe inr 'encerrado' en comillas sencillas

Ejemplo: insert into autor(Id_autor,Nombre,Nacionalidad,correo) values ('001','Gabriel Garcia Marquez','Colombiano'.'gabo_marquez@gmail.com');

Como visualizar o consultar la informacion de una tabla

Comando select

Sintaxis select * from nombretabla;

Ejemplo select *from libro;

Guardar copia de seguridad

Primero Comando exit

para guardar se copia lo SIGUIENTE! como esta: mysqldump -B -uroot -p biblioteca (nombre de la BD)>c:/xampp/biblioteca(nombre que le quiere dar BD).sql

Para abrir una base de datos ya creada

(direccion que le sale al principio) mysql -uroot -p

source y arrastra el archivo

Comando para consultar con condicional

Comando: where

Sintaxis: select todos o campos especificios from nombretabla where campo con condicion;

Ejemplo: visualizar los libros cuyo valor sea mayor a 30000. select descripcion from libro where Precio>30000;

Analisis.

1) Primero que tablas estan involucradas: libro

2) que informacion se desea visualizar: descripcion, precio

3) Hay condiciones? Si- Cual? Precio del libro>30000

4) Cual es el comando que nos da la soluciones (sintaxis) Where (select)

Sintaxis: select descripcion, precio from libro where Precio>30000; 

Visualizar la informacion de los autores colombianos

1) tablas que se involucran: autor

2) se desea visualizar: Nombre, nacionalidad

3) nacionalidad='colombiano'

4) Where (select)

Sintaxis: select Nombre,nacionalidad from autor where nacionalidad='colombiano';

Visualizar el autor con el Id_autor=008

1) tabla que se involucran autor

2 se desea visualizar Id_autor, Nombre, correo

3) Id_autor='008'

4) Where (select)

Sintaxis: select Id_autor,Nombre,correo from autor where Id_autor='008';


Visualizar la informacion de los libros 00001,0000,00003

1) tabla que se incolucran: libro

2) toda la informacion (Id_libro, Descripcion, Nro_paginas, Precio, Cantidad)

3 Id_libro>='00003';

4) Where (select)

Sintaxis: select *from libro where Id_libro<='00003';

Sintaxis con or:

select *form autor where Id_Autor ='01' or Id_Autor='03';

Reemplazar el comando or por el comando in:

Sintaxis select *from libro where Id_libro in('00001','00002','00003');

Visualizar la informacion de los autores 005 hasta el 008

select *from autor where Id_autor in('001','000

Visualizar la informacion de los libros 1 hasta el 5 con el comando and

select *from libro where Id_libro>='00001' and Id_libro<='00005';

Reemplazar el comando and por el comando between cuando se manejan intervalos

-select *from libro where Id_libro>='00001' and Id_libro<'00005';

-select *from libro where Id_libro between'00001' and '00005';

Comando like sirve para buscar coincidencias o busquedas no precisas

Este comando tiene tres variables

-Like '% a': Que termina en la letra a

-Like 'a%': Que inicia en la letra a

-Like '%a%': Que en alguna parte contenga la a

Ejemplo: Visualizar la informacion de los libros que comiencen con la letra e

-En la tabla libro buscar todo

-Condicion comenzar con la letra E

-Sintaxis select *from libro where descripcion like 'e%';

Para visualizas los que terminan con E

-Tabla libro buscar todo

-Condicion terminar con E

- Sintaxis select *from libro where descripcion like '%e';


Modificar o actualizar informacion

Comando update

Sintaxis: update nombretalbla set nombre del campo a actualizar='valor' condicion;

Ejemplo: cambiar el codigo 00001 por lo que el viento se llevo

update libro set descripcion='Lo que el viento se llevo' where id_libro='00001';

Elimiinar un registro

Comando: delete

Sintaxis

Delete from nombre tabla where condicion;

Eliminar el autor cuyo codigo es el 006

Ejemplo delete from autor where Id_autor='006';

Funciones para calculos

Sintaxis:
Select nombre funcion(valor) from (tabla);
Sum=suma
Min= minimo
Max=macimo
Avg= promedio
Count= contar
Ejemplo:
Hallar el valor total de los libros
Select sum(precio) 'Vaor total de los libros' from libro;

Como consultar varias tablas o una tabla relacional

 libros cuyo autor sea de riaz khadem

1) Que voy a mostrar: autor.codautor,autor.nombre,libro.descripcion

2) tablas: autor, libro, liautedi

3) Condicion: autor.nombre='riaz khadem'

4) como se relacional: autor.codautor=liautedi.codautor

libro.idlibro=liautedi.idlibro

sintaxis: select autor.codautor,autor.nombre,libro.descripcion from autor,libro,liautedi where autor.nombre='raiz khadem' and autor.codautor=liautedi.codautor and libro.idlibro=liautedi.idlibro;

Consultar las editoriales que tienene libros del autor Robert Lorber

1) Que voy a mostar: autor.nombre,editorial.nombre,libro.descripcion

2) tablas: autor, editorial, libro, liautedi

3) condicion: autor.nombre='Robert Lorber'

4) se relaciona: autor.codautor=liautedi.codautor

libro.idlibro=liautedi.idlibro

editorial.codedit=liautedi.codedit

Sintaxis: select editorial.nombre,autor.nombre,libro.descripcion from editorial,autor,libro,liautedi where autor.nombre='Robert Lorber' and editorial.codedit=liautedi.codedit and autor.codautor=liautedi.codautor and libro.idlibro=liautedi.idlibro;

Comando para no repetir informacion

Comando distinct

Sintaxis: select distinc libro.idlibro from libro where descripcion='Robert Lorber';

comando join 

join: union entre varias tablas, devuelve la informacion que encuentra esa union (relacion) 

select * from tabla1 innner join tabla 2 on tabla 1.id=tabla 2.id inner join tabla 3 on tabla 2.id=tabla 3.id2; 

visualizar el codigo del libro, nombre del libro, el codigo de la editorial y el nombre de la editorial con sus respectivos libros publicados 

analisis 

1º ¿que se desea consultar y de que tablas? 

 2º ¿que tablas se ven afectadas o involucradas? 

3º condicion 

4º¿como se relacionan las tablas? 

right join el right join opera del mismo modo que el left join, solo que la busqueda de coincidencias las realizan de modo contrario, es decir busca valores de coincidencias desde la tabla de la derecha hacia la tabla que esta a la izquierda y sucede lo mismo en el left, sino que encuentra coincidencias se genera una fila extra con todos los campos ceteados en null. 

-Visualizar el codigo del libro, el nombre del libro, el codigo de la editorial y el nombre de la editorial con sus respectivos libros publicados

1) Mostrar: idlibro, descripcion libro, codigo editorial, nombre editorial

2) libro, editorial, liautedi

3) Condicion: no

4) se relaciona: libro.idlibro=liautedi.idlibro, editorial.codedit=liautedi.codedit

select distinct libro.idlibro,libro.descripcion,editorial.codedit,editorial.descripcion from libro inner join liautedi on libro.idlibro=liautedi.idlibro inner join editorial on liautedi.codedit=editorial.codedit;

-Visualizar el listado de los libros que tienen al menos un autor asignado

1) Mostrar: id libro. descripcion libro, liautedi.idlibro

2) Tblas: libro liautedi

3) condicion: no

4) relacion: libro.idlibro=liautedi.idlibro

select libro.idlibro,libro.descripcion,liautedi.idlibro from libro right join liautedi on libro.idlibro=liautedi.idlibro;

el left join se utiliza para saber que registros no tienen correspondecia en otra tabla. Verifica una tabla izquierda a una tabla derecha, sino encuentra coincidencias se genera una fila extra con todos los camos cateados a uno

Ejemplo: Visualizar que libros no se les ha asignado un autor utilizando el left join

1) Mostrar: id libro, descripcion libro, liautedi idlibro

2) tablas: id libro

3) condiciones: liautedi.idlibro=null

4) relacion: libro.idlibro=liautedi,idlibro

Sintaxis: select libro.idlibro,libro.descripcion,liautedi.idlibro from libro left join liautedi on libro.idlibro=liautedi.idlibro where liautedi.idlibro is null;


ORDENAR INFORMACION

ASCENDENTE

Comando: order by

Sintaxis: select *from nombretabla order by nombrecampo tipodeordenado;

Ejemplo: select *from libro order by descripcion;


Ordenar por dos campos

Comando: order by

Sintaxis: select *from nombretabla order by nombrecampo1,nombrecampo2,nombrecampon tipodeordenado;

Ejemplo: select *from libro order by id_libro,descripcion;


DESCENDENTE

Comando order by

Sintaxis select *from nombretabla order by nombrecampo tipodeordenado;

Ejemplo: select *from libro order by id_libro,descripcion desc;


Ordenar por dos campos

Comando: order by

Sintaxis: select *from nombretabla order by nombrecampo1,nombrecampo2,nombrecampon tipodeordenado;

Ejemplo: select *from estudiante order by nom_E,dir desc;


AGRUPAR INFORMACION 

Comando: group by

Sintaxis: select *from nombretabla group by nombrecampo;

Ejemplo: select *from estudiante group by nom_E;

Usando las funciones (max,min,sum,avg,count)


Visualizar las cantidades de visitantes por ciudad

Analisis:

1) Que se desea consultar

Ciudad

2) Campo en el que se aplica la funcion

ciudad

3)Campo por el caul va a agrupar

Ciudad

Sintaxis:  select ciudad,count(ciudad)as'camtodad de vosotamtes' from visitantes group by ciudad;

Visualizar el total comprado por ciudad

1) Que se desea consultar

ciudad

2) Campo en el que se aplica la funcion

montocompra

3) campo por el cual va a agrupar

Ciudad

Sintaxis: select  ciudad,sum(montocompra) as'total compra' from visitantes group by ciudad;

Visualizar el monto de compra por sexo

1) Que se desea consultar

sexo

2) campo en el que se aplica

montocompra

3) campo por el cual va agrupar

sexo

sintaxis: select sexo,sum(montocompra) as' total de compra por sexo' from visitantes group by sexo;

Visualizar las ciudades a las que van mas de dos visitantes

Nota: cuando utlizamos group by y se manejan condiciones estas funcionan con where sino con la opcion having

1)Que se desea consultar

ciudad

2) campo en el que se aplica la funcion

ciudad

3) campo por el cual va agrupar

ciudad

4) condicion:

mas de dos visitantes

Sintaxis: select ciudad,count(ciudad) as 'cantidad de visitantes' from visitantes group by ciudad having count(ciudad)>2;


Calcular el valor promedio de montocompra agrupados por ciudad y sexo

1) que desea consultar

ciudad y sexo

2) campo en el que se aplica

montocompra

3) campo por el cual va agrupar

ciudad y sexo

Sintaxis: select ciudad,sexo,avg(montocompra) as'promedio compra' from visitantes group by ciudad,sexo;


Visualizar el monto compra por ciudad mayores a 5millones

1) Que se desea consultar

ciudad

2) campo en el que se aplica

montocompra

3)campo por el cual va agrupar

ciudad

4) condicion

sum(montocompra)>5millones

sintaxis select ciudad,sum(montocompra) as 'El total de monto de compra mayores a 5millones por ciudad es:' from visitantes group by ciudad having sum(montocompra)>5000000;


VISTAS

se utiliza para crear tablas temporales

Crear una vista que guarde toda la informacion de los nombres que finalicen en a

Comando view

Sintaxis: create view nombredelavista as consulta;

Ejemplo: create view visitatensa as select *from visitantes where nombre like '%a';


Comando para auto incrementar automaticamente: auto_increment

create table edicion(

-> codigo int auto_increment,

-> descripcion varchar(30) not null,

-> Primary key(codigo));


COMANDO TRUNCATE

Sirve para eliminar los registros de una tabla y reinicia el auto incremento

Sintaxis: truncate table (nombre tabla);

Ejemplo:Ttruncate tabla edicion;


Comando float o float usigned

tipo de dato para los valores float (permite los negativos) float usigned (solo positivos)

precio float not null,

precio float unsigned not null,


Comando CALL: sirve para insertar datos en un procedimiento almacenado

Sintaxis: call insertar(nombre del procedimiento) (envia campos);

Ejemplo: call insertaalumno ('431413','Sofia perez','Activo');

Para borrar un procedimiento: 

Drop procedure y el nombre del procedimiento;


Procedimiento para listar

Ejemplo:  van en diferente linea

delimiter //

create procedure listaralumno ()

begin

select *from alumno;

 end

//

Query OK, 0 rows affected (0.00 sec)

delimiter ; (siempre lleva espacio antes del punto y coma)


Sintaxis para visualizar procedimientos: show procedure status;


Procedimiento para consultar un alumno con condicion

Delimiter //

create procedure consultarlumno(in_codesu char(3))

begin

select *from alumno where carnet=_codestu;

end

//

delimiter ; 


procedimiento para eliminar un alumno

Delimiter //

create procedure eliminaralumno(in_codestu char(3))

begin

delete from alumno where codestu=_codestu;

end

//

delimiter ;


Procedimiento para modficar

Delimiter //

Create procedure modificaralumno(in_codestu char(3),in_nombre char(60),in_direccion char(50),in_telefono char(10))

begin

update alumno set nombre=_nombre,direccion=_direccion,telefono=_telefono where codestu=_codestu;

end

//

delimiter ;


Comando para visualizar los procedimientos de almacenados de la base de datos:

SHOW PROCEDURE STATUS; 

Copia de seguridad con procedimientos almacenados:

Sintaxis: mysqldump -B -uroot -p --routines (bd)>c>/xampp/nombrebd.sql


TRIGGER

delimiter //

create trigger (nombredeltrigger) after insert on (tabla) (create trigger actualizar_existenciap after insert on detalle)

for each row

begin

update articulo set existencia =cantidad -(select sum(cantidad) from detalle where detalle.codigo = articulo.codigo);

end

//

demiliter ;





© 2018 Duvan Agudelo, Itagui, Simon Bolivar
Creado con Webnode
¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar