Las sentencias SQL se
dividen en dos categorías; Lenguaje de definición de datos: data
definition language (DDL) y Lenguaje de manipulación
de datos : data manipulation language (DML). Que son
lo que se describirán a continuación:
Lenguaje de definición de datos (DDL)
Las
sentencias DDL se utilizan para
crear y modificar la estructura de las tablas así como otros objetos de la base
de datos.
·
CREATE - para crear objetos en la base
de datos.
·
ALTER - modifica la estructura de la base
de datos.
·
DROP - borra objetos de la base de
datos.
·
TRUNCATE - elimina todos los registros
de la tabla, incluyendo todos los espacios asignados a los registros.
Lenguaje de manipulación de datos (DML)
Las
sentencias de lenguaje de manipulación de datos (DML) son utilizadas para gestionar datos dentro de los schemas.
Algunos ejemplos:
·
SELECT - para obtener datos de una base
de datos.
·
INSERT - para insertar datos a una
tabla.
·
UPDATE - para modificar datos
existentes dentro de una tabla.
·
DELETE - elimina todos los registros de
la tabla; no borra los espacios asignados a los registros.
CREACIÓN
DE UNA BASE DE DATOS:
Para
poder crear una base de datos en MySQL se utiliza la instrucción CREATE DATABASE NOMBRE_BASE; Por
ejemplo:
Crea la base de datos “Farmacia”.
CREATE DATABASE FARMACIA;
Para
poder comprobar que nuestra base de datos fue creada, podemos emplear la
instrucción SHOW DATABASES y esta
nos mostrará todas las bases de datos disponibles en forma de una tabla.
Nota:
después de crear nuestra sentencia y dar un enter nos debe aparecer algo así:
Query OK. Y así sabremos que nuestra sentencia fue ejecutada de manera exitosa
y podemos proceder con las siguientes instrucciones. Esto aplica para toda
instrucción en MySQL.
USO
DE UNA BASE DE DATOS:
Para poder poner en uso nuestra base de datos se
utiliza la instrucción: USE NOMBRE_BASE;
Por ejemplo:
Poner en uso la base de datos “Farmacia”.
USE FARMACIA;
Al poner en uso
nuestra base de datos podemos crear tablas dentro de esta y alterarlas de
cuantas maneras queramos.
CREACIÓN
DE TABLAS:
Para la creación de
una o más tablas en MySQL se tiene que usar la siguiente instrucción: CREATE TABLE NOMBRE_TABLA ( REGISTRO1 TIPO
DE DATO, REGISTRO2 TIPO DE DATO, REGISTRO3 TIPO DE DATO, PRIMARY
KEY(REGISTRO_IRREPETIBLE)); Por ejemplo:
Crear
la tabla cliente con los registros IdCliente, NombreCliente, EdadCliente.
CREATE
TABLE CLIENTE (IdCliente int, NombreCliente varchar(20), EdadCliente int(2),
PRIMARY KEY(IdCliente));
Nota:
IdCliente es nuestra primary key ya que es un dato que no puede repetirse en
nuestra tabla.
LLAVE
PRIMARIA:
La llave primaria o
primary key es una clave candidata
que ha sido diseñada para identificar de manera única a los registros de una
tabla a través de toda la estructura de la base de datos. Las llaves primarias
se utilizan en las instrucciones para crear una tabla, es la que nos permite
preservar la integridad de los datos de dicha tabla. Por ejemplo:
Crear
la tabla película:
CREATE
TABLE PELICULA(IdPelicula int, nombre varchar(20), país varchar(20), PRIMARY KEY(idPelicula));
Donde “IdPelicula” es considerada como la
llave primaria ya que es un dato que no puede repetirse en la tabla.
MOSTRAR
TABLAS:
Para mostrar una
tabla en MySQL se utiliza la instrucción SHOW
TABLES FROM DATABASE; Por ejemplo:
Mostrar
las tablas de la base de datos “Farmacia”.
SHOW
TABLES FROM FARMACIA;
Y de esta manera
podemos ver todas las tablas disponibles en la base de datos Farmacia.
DESCRIPCIÓN
DE UNA TABLA:
Este comando nos
muestra información de la tabla, sus campos, tipo de datos, extras, es decir,
toda la información detallada de la tabla. Por ejemplo:
Describe
la tabla “cliente”.
DESCRIBE
CLIENTE;
Y con este comando
nos aparecerán todos los datos de la tabla cliente.
AGREGAR
DATOS A UNA TABLA:
Para agregar datos
a una tabla en MySQL se emplea la instrucción: INSERT INTO NOMBRE_TABLA VALUES (VALUE1, VALUE2, VALUE3); Por
ejemplo:
Llenar la tabla “cliente”
con tres registros:
INSERT INTO CLIENTE
VALUES (1, ‘Juan’,23);
INSERT INTO CLIENTE
VALUES (2, ‘Pedro’,18);
INSERT INTO CLIENTE
VALUES (3, ‘Andrea’,45);
Nota: los datos
ingresados deberán llevar comillas simples dependiendo sin son datos de tipo
cadena o si son de tipo numérico no necesitarán comillas.
CONSULTAS
A UNA TABLA:
Ya disponemos de
bases de datos, y sabemos cómo añadir y modificar datos. Ahora aprenderemos a
extraer datos de una base de datos. Para ello volveremos a usar la sentencia
SELECT.
La
sintaxis de SELECT es compleja, pero en este capítulo no explicaremos todas sus
opciones. Una forma más general consiste en la siguiente sintaxis:
SELECT [ALL |
DISTINCT | DISTINCTROW]
expresion_select,...
FROM
referencias_de_tablas
WHERE condiciones
[GROUP
BY
[ASC |
DESC], ... [WITH ROLLUP]]
[HAVING
condiciones]
[ORDER
BY
[ASC |
DESC] ,...]
[LIMIT
]
Por ejemplo:
Mostrar
todos los datos de la tabla alumno:
SELECT
* FROM alumno;
Mostrar
nombre y edad de los alumnos de 16 años.
SELECT
nombre, edad FROM alumno WHERE edad=16;
CONSULTAS
A DOS TABLAS:
Cuando se cruzan
tablas en una consulta SQL, a efectos lógicos el producto cartesiano entre
varias tablas se puede considerar como una nueva tabla siendo válido todo lo
expuesto sobre consultas de una sola tabla, es decir, se considera que el motor
SQL primero generará el producto cartesiano sobre las tablas de la cláusula
FROM, para después ejecutar el resto de la consulta sobre este resultado.
En la cláusula
WHERE se pueden establecer condiciones comparando campos de un mismo registro
entre sí. Cuando los campos son de tablas distintas se estarán reuniendo
registros entre ambas tablas bajo un concepto o propósito. El caso más amplio
de relación es el producto cartesiano, donde se reúnen todos con todos.
Por ejemplo:
Tenemos las
siguientes tablas:
Tabla:
CAMISAS.
IdCamisa
|
Camisa
|
Peso_gr
|
1
|
Lino
blanca
|
470
|
2
|
Lino
blanca
|
730
|
3
|
Algodón blanco
|
730
|
4
|
Seda negra
|
470
|
Tabla:
PANTALONES.
IdPantalón
|
Pantalón
|
Peso_gr
|
Camisa
|
1
|
Tela azul
|
470
|
1
|
2
|
Pana marrón
|
700
|
3
|
3
|
Negro lona
|
720
|
4
|
4
|
Pana azul
|
207
|
1
|
Ahora realizamos
las siguiente consulta:
Mostrar
las camisas y el peso de los pantalones:
SELECT
camisa, peso_gr FROM camisas, pantalones where idcamisa=camisa;
S Una vista es una tabla virtual (no tiene una correspondencia a
nivel físico)
S Se puede consultar como cualquier tabla básica.
S Actualizaciones se transfieren a la/s tabla/s original/es
S Información derivada de la formación de grupos de tuplas (p.e. para la obtención de estadísticas).
S En general: información derivada de consultas complejas a la que se accede con frecuencia.
S Como mecanismo de seguridad: creación de vistas con, únicamente, los atributos de las tablas a los cuales se desea permitir acceder a determinados usuarios.
VISTAS:
Una vista es una tabla
virtual con una estructura que se define pero sin datos, estos se generan en
una consulta.
Una vista se caracteriza porque:
S
Se considera que forma parte del esquema externo.S Una vista es una tabla virtual (no tiene una correspondencia a
nivel físico)
S Se puede consultar como cualquier tabla básica.
S Actualizaciones se transfieren a la/s tabla/s original/es
(Con ciertas limitaciones).
Para la especificación de tablas con
información que se accede con frecuencia pero no posee existencia física:
S Información derivada de la
relación entre varias tablas.S Información derivada de la formación de grupos de tuplas (p.e. para la obtención de estadísticas).
S En general: información derivada de consultas complejas a la que se accede con frecuencia.
S Como mecanismo de seguridad: creación de vistas con, únicamente, los atributos de las tablas a los cuales se desea permitir acceder a determinados usuarios.
S Para la
creación de esquemas externos.
EJEMPLO:
IdEstudiante
|
Nombre
|
Edad
|
Semestre
|
1
|
Juan
|
15
|
3
|
2
|
Ana
|
17
|
5
|
3
|
Luis
|
17
|
5
|
4
|
Toño
|
14
|
1
|
TABLA:
ESTUDIANTE.
CREATE VIEW Alumnos AS SELECT Nombre FROM ESTUDIANTE;
SELECT * FROM Alumnos;
PROCEDIMIENTOS
ALMACENADOS
Un procedimiento es
un conjunto de instrucciones que se guardan en el servidor para un posterior
uso, ya que se ejecutarán frecuentemente. En MySQL se nombran con la cláusula PROCEDURE.
A diferencia de las
funciones, los procedimientos son rutinas que no retornan en ningún tipo de
valor. Simplemente se llaman desde el cliente con un comando y las
instrucciones dentro del procedimiento se ejecutarán.
Ventajas
De Usar Procedimientos En MySQL
●
Seguridad: Los procedimientos ocultan el nombre de las tablas a usuarios que no
tengan los privilegios para manipular datos. Simplemente llaman los
procedimientos sin conocer la estructura de la base de datos.
● Estándares
de código: En un equipo de desarrollo usar el mismo procedimiento permite crear
sinergia en las fases de construcción. Si cada programador crea su propio
procedimiento para realizar la misma tarea, entonces podrían existir problemas
de integridad y pérdida de tiempo.
● Velocidad:
Es mucho más fácil ejecutar un programa ya definido mediante ciertos
parámetros, que reescribir de nuevo las instrucciones.
EJEMPLO
DE UN PROCEDIMIENTO ALMACENADO
Tabla: Pets.
IdPet
|
Nombre
|
Edad
|
Sexo
|
Especie
|
1
|
puchi
|
2
|
H
|
Perro
|
2
|
Toto
|
5
|
M
|
Gato
|
3
|
Kuka
|
3
|
M
|
Perro
|
4
|
Koko
|
1
|
H
|
Perro
|
Primero se crea la
consulta para asegurarnos de que esta funciona, por ejemplo:
Crear un
procedimiento que muestre a una mascota por su Id:
Select * from Pets where IdPet=1;
Ahora, se crea el
procedimiento:
CREATE PROCEDURE num(id int) SELECT * FROM PETS WHERE
IdPet=id;
Ahora, se manda a
llamar el procedimiento:
Call num(1);
no contiene informacion de los comandos de select
ResponderBorrarCan Titanium Rings be Resized? - TITIAN ART
ResponderBorrarThe Teton titanium jewelry for piercings Canyon will be able to babyliss pro titanium hair dryer utilize these micro hair trimmer can be re-skinned as a ski bar. In fact, the Teton Canyon can easily be re-shaved using black oxide vs titanium drill bits a titanium apple watch