Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
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.
Ejemplo:
create table persona (id int(3) not null auto_increment, nombres varchar(50)
not null, apellidos varchar(30) default ' ', primary key(id));
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>;
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.
Operadores de comparacion:
=
comparador de equidad
<
Menor que
>
Mayor que
>=
<=
Ejemplo de consulta:
SELECT * FROM tabla WHERE (a=1 AND (B>5 OR C='Mil'));
('patron%'), Este uso define que todos los registros que empiecen con el patrn
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%');
Ejemplo:
Insertar Registros.
INSERT INTO. Este comando permite insertar registros sobre una tabla en
especifico de la base de datos, y existen 3 maneras bsicas de insertar
registros.
Eliminar Registros.
Si se quiere eliminar todos los registros de la tabla n, SQL permite hacerlo con
un comando muy simple
TRUNCATE, y se usa de la siguiente manera: TRUNCATE <tabla>;
Y el resultado es vaciar la tabla de registros, es muy parecido a la accin de
vaciar la papelera de reciclaje de Unix.
Hasta el momentos se han esta ejecutando sentencias sobre una sola tabla,
cuando s requiere acceder los datos de mas de una tabla relacionadas de
alguna manera y no relacionadas, existen las opciones avanzadas de los
comandos mencionados con anterioridad.
Este comando permite utilizarse con una clusula que permite distinguir datos
de uno, y la clausula es:
DISTINCT, que permite obtener datos no duplicados, si y solo si todos los
atributos se parecen.
SELECT DSTINCT tabla1.*, tabla2.* FROM tabla1, tabla2 WHERE (Condiciones
de relacin) Anteriormente se indic que el comando SELECT da como
resultado otra tabla, por lo tanto, si se
quieren obtener solo algunas filas del resultado de una consulta, se puede
hacer de una manera muy simple, aqui se hace uso de los ALIAS, que permite
nombra ya sea una tabla, o un atributo y se usa de la siguiente manera:
SELECT * FROM (SELECT * FROM tabla WHERE id>20 and id<50) res WHERE
res.id=30;
La manera en que se muestra los datos puede no ser la que se requiere, ya que
si se quieren obtener los datos ordenados, el manejador permite hacerlo
DESC;
ejemplos:
Comandos del algebra relacional UNION, MINUS, INERSECT, LEFT JOIN, RIGHT
JOIN, OUTER JOIN.
EL comando union obtiene la union de una o mas tablas, con los mismos
atributos.
Ejemplos:
SELECT tabla1.*, tabla 2.* from tabla1 RIGHT JOIN tabla2 on C1=C2; SELECT
tabla1.*, tabla 2.* from tabla1 LEFT JOIN tabla2 on C1=C2;
SELECT tabla1.*, tabla 2.* from tabla1 LEFT OUTER JOIN tabla2 on C1=C2;
SELECT tabla1.*, tabla 2.* from tabla1 RIGHT OUTER JOIN tabla2 on C1=C2;
el resultado de las sentencias anteriores son diferentes, ya que la junta se hace
en una direccion y otra, de la misma manera que las clusulas del algebra
relacional, de la manera en que se especifican se obtienen resultados
diferentes.
Ejercicios
1. Le contratan para hacer una BD que permita apoyar la gestin de un sistema
de ventas. La empresa necesita llevar un control de proveedores, clientes,
productos y ventas. Un proveedor tiene un RUT, nombre, direccin, telfono y
pgina web. Un cliente tambin tiene RUT, nombre, direccin, pero puede tener
varios telfonos de contacto. La direccin se entiende por calle, nmero,
comuna y ciudad. Un producto tiene un id nico, nombre, precio actual, stock y
nombre del proveedor. Adems se organizan en categoras, y cada producto va
slo en una categora. Una categora tiene id, nombre y descripcin. Por
razones de contabilidad, se debe registrar la informacin de cada venta con un
id, fecha, cliente, descuento y monto final. Adems se debe guardar el precio al
momento de la venta, la cantidad vendida y el monto total por el producto.
2. Una base de datos para una pequea empresa debe contener informacin
acerca de clientes, artculos y pedidos. Hasta el momento se registran los
siguientes datos en documentos varios: Para cada cliente: Nmero de cliente
(nico), Direcciones de envo (varias por cliente), Saldo, Lmite de crdito
(depende del cliente, pero en ningn caso debe superar los $3.000.000).
Para cada pedido: Cada pedido tiene una cabecera y el cuerpo del pedido. La
cabecera est formada por el nmero de cliente, direccin de envo y fecha del
pedido. El cuerpo del pedido son varias lneas, en cada lnea se especifican el
nmero del artculo pedido y la cantidad. Adems, se ha determinado que se
debe almacenar la informacin de las fbricas. Sin embargo, dado el uso de
distribuidores, se usar: Nmero de la fbrica (nico) y Telfono de contacto. Y
se desean ver cuntos artculos (en total) provee la fbrica. Tambin, por
informacin estratgica, se podra incluir informacin de fbricas alternativas
respecto de las que ya fabrican artculos para esta empresa. Nota: Una
direccin se entender como N, Calle, Comuna y Ciudad. Una fecha incluye
hora.