consultas

18
LOGO MYSQL Jimmy Añazco Diseño y gestión de Base de Datos.

Upload: pabloantoniofidel

Post on 03-Jul-2015

2.500 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Consultas

LOGO

MYSQL

Jimmy Añazco

Diseño y gestión de Base de Datos.

Page 2: Consultas

SENTENCIAS

\T ubicación nombre_archivo.txt\T ubicación nombre_archivo.txtPara crear un archivo txt de respaldo.Show databases;Muestra todas las bases de datos creadasUse nombre_basebatos;Seleccionar la base de datos en la que se va ha

trabajar.CREATE DATABASE nombre_bd;Creación de una base de datosShow tables;Muestra las tablas creadas dentro de la base de

datos.

Page 3: Consultas

CREACIÓN DE TABLAS

Create Table nombre_tabla (nombre_campo_1 tipo_1,nombre_campo_2 tipo_2,nombre_campo_n tipo_n,Key(campo_x,...))

INSERTAR VALORES EN LAS TABLASINSERT INTO nombre_tabla VALUES (´’valor 1’,’valor 2’,…...,)

Para eliminar atributos de una tablaALTER TABLE [nombre_de_la_tabla] DROP [nombre_columna];

ALTER TABLE clientes DROP cédula;

Page 4: Consultas

CLAVES PRIMARIAS

Crear una clave primaria junto con la creación de una tabla;mysql> create table empleado(

-> id_empl int (10) unique primary key, -> nombre varchar (25), -> edad int(10));

Eliminar una clave primaria:

alter table empleado drop id_empl

Page 5: Consultas

Otras sentencias

Cambiar el nombre a una tabla:

mysql>alter table personas rename clientes;

Para modificar el tipo de dato de un campo.

mysql> Alter table usuarios Modifty cedula varchar(15);

crear una clave primaria en una tabla, a partir de un campo ya creado

mysql> alter table usuarios modify id int(10) not null, add primary key(id);

Page 6: Consultas

CLAVES PRIMARIAS

Insertar un atributo en la tabla y ponerlo como clave primaria.

Alter table empleado ADD id_empleado varchar(10) unique primary key;

Nombrar un atributo ya creado como clave primaria.mysql> alter table usuarios modify id int(10), add

primary key(id);

Mysql>alter table postal add primary key id_postal);

Page 7: Consultas

ejemplos

create table personas (nombre varchar(20), apellido varchar (30), telefono varchar(10));

Page 8: Consultas

Agregar atributos de una tabla

Colocar una columna al final de la tabla

ALTER TABLE [nombre_de_la_tabla] ADD [columna_nueva opciones];ALTER TABLE clientes ADD cedula varchar(10);

Si se desea crear una columna al inicio de una tabla:

ALTER TABLE [nombre_de_la_tabla] ADD [columna_nueva opciones] FIRST;ALTER TABLE clientes ADD cédula varchar(10) FIRST;

Y si se trata de colocarla después de una columna dada, es:

ALTER TABLE [nombre_de_la_tabla] ADD [columna_nueva opciones] AFTER [nombre_de_columna];

ALTER TABLE clientes ADD cédula varchar(10) AFTER nombre;

Page 9: Consultas

Buscar datos

LIKE "b%“Muestra los valores que inician con b.LIKE "%a”Muestra los valores que terminan con

“a”.LIKE "%a%”Muestra los valores que contengan “a”

en cualquier posición.

Page 10: Consultas

ejemplos

mysql> alter table empleado add direccion varchar(30) after apellido;

cambiar el tipo de dato de cedula varchar a int(10)

mysql> alter table empleado change cedula cedula int(10);

Page 11: Consultas

Ejemplo generación de claves

mysql> update personas2 set codigo=concat(substr(nombre,2,1),"_","hola") where id=2;

mysql> update personas2 set codigo=concat(substr(nombre,2,1),"_","hola") where id=3;

FUNCIONES:lower(cad)UPPER(CAD)Initcad(Cad)

Page 12: Consultas

ejemplos

nombres de los empleados cuyo salario está por encima de la media:

SQL> select nombre from empwhere salario > (select avg(salario) from

emp);

SQL> create view ampAdmin as select * from ep where cod_dep=100;

Page 13: Consultas

MANEJO DE CLAVES FORáNEAS

ACTUALIZAR EN CASCADA

Page 14: Consultas

Claves foráneas y actualización en cascada

En MySQL sólo existe soporte para claves foráneas en tablas de tipo InnoDB.

CREATE TABLE nombre_tabla (id INT AUTO_INCREMENT PRIMARY KEY, atrib_2 VARCHAR(40), atributo_3 DATE)ENGINE=InnoDB;

Page 15: Consultas

CREATE TABLE nombre_tabla ( numero CHAR(12), id INT NOT NULL, KEY (id), FOREIGN KEY (id) REFERENCES tabla_principal (id)ON DELETE CASCADE ON UPDATE CASCADE)ENGINE=InnoDB;

Hace referencia a la tabla principal de donde toma la clave primaria

Page 16: Consultas

ON DELETE <opción>, indica que acciones se deben realizar en la tabla actual si se borra una fila en la tabla referenciada.

ON UPDATE <opción>, es análogo pero para modificaciones de claves.

Existen 4 opciones diferentes.

RESTRICT: esta opción impide eliminar o modificar filas en la tabla referenciada si existen filas con el mismo valor de clave foránea.

CASCADE: borrar o modificar una clave en una fila en la tabla referenciada con un valor determinado de clave, implica borrar las filas con el mismo valor de clave foránea o modificar los valores de esas claves foráneas.

NO ACTION: las claves foráneas no se modifican, ni se eliminan filas en la tabla que las contiene.

SET NULL: borrar o modificar una clave en una fila en la tabla referenciada con un valor determinado de clave, implica asignar el valor NULL a las claves foráneas con el mismo valor

Page 17: Consultas
Page 18: Consultas

Operaciones con texto

CONCATSUBSTRLEFT izquierdaRight derecha