Aqui colocaré algunas prácticas de PostgreSQL, son básicas.
Practica 3.1
Practica 3.2
Practica 3.3
Práctica 3.4. Definición de datos
Objetivos.
El alumno aprenderá a utilizar a crear bases de datos, índices y vistas a través de la herramienta pgAdminIII (Editor SQL) para crear y manipular bases de datos de PostgreSQL.
Material:
PostgreSQL 8.3 (pgAdminIII)
Bibliografía:
INICIO
Se pretende en esta práctica hacer bases de datos, índices y vistas con la herramienta pgAdminIII
DEFINICION DE DATOS
Instrucción CREATE TABLE
CREAR BASE DE DATOS (BDVENTAS)
CREATE TABLE PROVEEDORES
(PID INTEGER,
PNOMBRE VARCHAR(20),
CIUDAD VARCHAR(20));
CREATE TABLE ARTICULOS
(AID INTEGER,
ADESC VARCHAR(20),
PRECIO DECIMAL(4 , 2));
CREATE TABLE VENTAS
(VID INTEGER,
VART INTEGER);
Aplicar integridad referencial (constraint_pk, constraint_fk)
Consultas.
Mostrar los artículos donde el precio sea mayor a $100
Mostrar el nombre, precio donde el precio sea mayor a $100
Mostrar el nombre, precio del “cemento ca” y su precio sea $0 o $100
Conocer el precio de 2 artículos que se pueden comprar con $150
Conocer el nombre del proveedor y los artículos vendidos
Conocer el costo promedio de todos los artículos
Conocer cuántos productos existen en la tabla ARTICULOS
Cuántos artículos han sido vendidos por cada proveedor
Conocer los proveedores que venden más artículos
Conocer los artículos que tienen un costo mayor que el artículo llamado “cemento ap”
Conocer todos los proveedores que no venden ningún artículo
Mostrar los datos de los proveedores MAXSA, MATUSA (UNION)
Instrucción CREATA INDEX
CREATE INDEX index name
ON table name (name of attribute);
EJEMPLO. Para crear un índice llamado P sobre el atributo PNOMBRE de la relación PROVEEDORES
CREATE INDEX P
ON PROVEEDORES (PNOMBRE);
El índice creado se mantiene automáticamente, es decir, cada vez que una nueva tupla se inserte en la relación PROVEEDORES, se adaptara el índice P. El único cambio que puede percibir el usuario es el incremento de velocidad.
Instrucción CREATE VIEW
Una vista es una tabla virtual, aparece en la base de datos pero no está físicamente, por el contrario cuando hablamos de una tabla base, hay realmente un equivalente almacenado para cada fila en la tabla.
Las vistas no tienen datos propios, distinguibles y físicamente almacenados. En su lugar, el sistema almacena la definición de la vista, en algún lugar del catálogo del sistema
CREATE VIEW view name
AS select statement
Donde select statement es una instrucción select válida. select_stmt no se ejecuta cuando se crea la vista. Simplemente se almacena en los catálogos del sistema y se ejecuta cada vez que se realiza una consulta contra la vista.
Ejemplo:
CREATE VIEW Acayucan_Proveedores
AS SELECT S.PNOM, P.DESC
FROM PROVEEDORES S, ARTICULOS P, VENTAS SE
WHERE S.PID = SE.VID AND
P.AID = SE.VART AND
S.CIUDAD = 'Acayucan';
Y para usar la vista:
SELECT * FROM Acayucan_Proveedores
WHERE P.ADESC=’cemento ’ ;
Para calcular este resultado, el sistema de base de datos realizará previamente un acceso oculto a las tablas de la base PROVEEDORES, VENTAS y ARTICULOS. Hace esto ejecutando la consulta dada en la definición de la vista contra aquellas tablas base. Tras eso, las cualificaciones adicionales (dadas en la consulta contra la vista) se podrán aplicar para obtener la tabla resultante.
Instrucciones DROP TABLE, DROP INDEX, DROP VIEW
DROP TABLE table_name;
Ejemplo:
DROP TABLE PROVEEDORES;
DROP INDEX index_name;
Ejemplo:
DROP INDEX P;
DROP VIEW view_name;
Ejemplo:
DROP VIEW Acayucan_Proveedores;
miércoles, 14 de mayo de 2008
Suscribirse a:
Entradas (Atom)