MySql Basico
fcorrea198312 de Mayo de 2014
2.652 Palabras (11 Páginas)219 Visitas
LENGUAJE SQL
Un manejador de base de datos debe de contener lenguajes que permitan definir el modelos de los
datos, este mismo es que permite crear la estructura de la base de datos.
Lenguaje de Definicion de Datos
En Mysql el Lenguaje de Difinicion de Datos (LDD) es un subconjunto de SQL (Create Table, create
Index, Create view, create table, drop table, drop database, drop view, etc;).
Lenguaje de Manipulacion de Datos
Este lenguaje es que se utiliza para realizar las operaciones como son: consultas (Lenguaje de
Consultas), Borrar, insertar y actualizar datos.
En Mysql se utiliza un subconjunto de SQL (update, insert into, delete, select, truncate,etc).
Todos los comandos de manejador Mysql, se deben de terminar con un “;”, si no se termina con un “;”,
el cursor salta a la siguiente linea para seguir escribiendo mas comandos, es debido a que pueden existir
sentencias de consulta o creación de tablas muy grandes, y de esta manera se hace multilinea.
Comandos básicos para el LDD, y visualización de esquemas
CREATE DATABASE <nombreDataBase>;
Este comando crea una nueva base de datos sobre el manejador que se esta utilizando
USE <nombreDataBase>
Cuando se ha creado una base de datos y se pretende trabajar sobre ella, es necesario ejecutar
este comando para asignarla al área de trabajo, si se quiere crear alguna tabla, ocurre un error debido a
que no se ha establecido el área de trabajo, que en este caso sera la base de datos. Esta sentencia, es la
unica que se puede ejecutar sin un punto y coma para terminar.
SHOW [DATABASES | TABLES];
A veces es necesario verificar si aun no se ha creado una base de datos con algún nombre
especifico, o tal tal vez verificar que al crear una base de datos, la operación haya tenido éxito, para
esto, el comando show permite visualizar las bases de datos sobre el manejador o las tablas sobre una
BD en el área de trabajo.
CREATE TABLE <nombreTabla> ([atributos características] primary key(atributo), foreign
key(atributo) reference tabla)
Para crear las definiciones y/o esquemas de las entidades que van a formar parte de la base de
datos, se ejecuta este comando para crear una entidad o tabla de la base de datos, en esta definición se
especifican también las llaves tanto primaria como foráneas.
Ejemplo:
create table persona (id int(3) not null auto_increment, nombres varchar(50) not null, apellidos
varchar(30) default ' ', primary key(id));
La instruccion anterior crea una tabla llamada persona, estableciendo como llave primaria el atributo id
que este es auto incrementable.
CREATE VIEW <nombreVista> as (tabla temporal);
Este comando se utliza para crear tablas virtuales en la base de datos, es decir, se puede utlizar
para crear espejos de tablas, las propiedades que tiene son que cualquier operacion sobre los datos en
esta tabla virtual, tienen efecto sobre los datos originales, la tabla temporal puede ser una consulta
simple hasta un consulta compleja.
DROP [DATABASE | TABLE | VIEW] <nombreTabla | nombreDataBase | nombreView>;
Este comando se utiliza para eliminar tanto bases de datos como tablas, y vistas (tablas
virtuales).
Ejemplo: si se quiere eliminar una tabla que tiene como nombre “personas”:
DROP TABLE personas;
Estos son los comandos basicos para la definicion de los datos, Algunos comando marcan errores
cuando se pretende crear tablas, bases de datos, y/o vistas, cuando ya existen, para evitar este tipo de
errores, el manejador de bases de datos provee unas instrucciones condicionales para no cometer
errores.
IF EXISTS, IF NOT EXISTS: estos son las clausulas para verificar antes de crear alguna entidad o DB,
la manera en que se utilizan es la siguiente:
CREATE TABLE IF NOT EXIST <nombre table> (......)
CREATE DATABASE IF NOT EXISTS <nombreDataBAse>;
CREATE VIEW IF NOT EXISTS <nombreVista>;
de la misma manera para crear nuevas entidades o DB's, se utiliza para eliminar entidades yo DB's;
DROP [VIEW | DATABASE | TABLE] IF EXISTS <nombreVista | nombreBase |
nombreTabla>
Hasta el momento se han definido los comandos para la definicion de datos, entonces los comandos
demanipulacion de datos, son los que permiten interactuar con la informacion de la BD, es decir, son
los que permiten insertar, actualizar, eliminar, etc. Los datos de la BD.
Comandos del Lenguaje de Manipulacion de Datos
El lenguaje de manipulacion de datos se puede clasificar en 2 tipos:
Lenguaje de consulta y lenguaje de manipulacion.
El lenguaje de consulta permite obtener la informacion requerida por el usuario, y el comando utilizado
para crear los reportes(tablas) para un determinado uso es:
SELECT [atributos, ...] FROM [tabla1, tabla2 .....] WHERE [condiciones] ORDER BY
[atributos, atributos].
Este comando se utiliza de diferentes maneras, y se le conoce como sentencias de consulta, obtener
datos, y se usan de manera simple hasta de manera compleja.
Simples con una sola tabla:
SELECT * FROM tabla;
Esta sentencia obtiene todos los atributos de todos los registros que existen en “tabla”.
SELECT atrib1, atrib2, ..., atribn FROM tabla;
Realiza la misma accion que la sentencia anterior, a diferencia de que en la anterior se muestran
todos los atributos, y en esta se muestran solo algunos atributos especificados.
Cuando se requiere obtener solo los registros que cumplen alguna restriccion o condicion en algunos de
los atributos de una tabla, se utiliza la clausula WHERE para especificar las condiciones que deben
cumplir los registros que se desean.
SELECT * FROM tabla WHERE (Atributo='valor');
Cuando se tienen varias condiciones, se pueden utilizar los operadores logicos en conjunto con los
operadores de comparacion:
Operadores logicos: AND (&), OR ( | ) NOT.
Operadores de comparacion:
= comparador de equidad
< Menor que
> Mayor que
>= Mayor o igual que
<= Menor o igual que
(<>, !=, not) Diferente de
Ejemplo de consulta:
SELECT * FROM tabla WHERE (a=1 AND (B>5 OR C='Mil'));
El comando de consulta tambien se puede utilizar con la clausula LIKE, que permite manejar patrones,
es decir, se especifica un patron para realizar las comparaiones, y los registros que tengan ese patron en
el atributo especificado se van a obtener independiente mente mayúscula o minuscula.
El uso de esta clausula es de la siguiente manera:
('%patron%'), este especifica que no importa en donde aparesca ese patron, incluso puede no existir,
es decir no importa que tenga atras, ni que tenga delante del patron, se va a obtener el registro.
('patron%'), Este uso define que todos los registros que empiecen con el patron especificado se van a
obtener.
(%patron), de la misma manera, que el anterior a diferencia que ente son los que terminan.
Ejemplo:
SELECT * FROM persona WHERE (Apellidos LIKE 'Perez%');
en este ejemplo se obtienen todos los registros de la tabla persona que empiezan con Perez, no importa
que tenga después.
Cuando existen varias condiciones sobre un mismo atributo en una sentencia es tedioso estar
especificando cada condición sobre el atributo, para eliminar esta problematica y que las sentencias no
se tornen muy grandes, SELECT se combina con la clausula IN que recibe un conjunto de valores en
los cuales se van a evaluar las condiciones
Ejemplo:
SELECT * FROM tabla WHERE (id [NOT] IN (valor1, valor2, valor3,....,valorn))
en el caso de que sean cadenas de caracteres se meten entre comillas.
En resumen el comando SELECT obtiene registros de una o mas tablas, y como resultado entrega una
tabla temporal.
El Lenguaje de Manipulacion de datos
...