7
I 2015 LaboratorioPostgres 1 Fundamentos y Diseño de Base de Datos Ing.Harvey Michael Gamboa Peña Universidad de Pamplona - Ext. Villa Rosario CREACION DE BASE DE DATOS EN POSTGRESQL 1. Primero abrimos el aplicativo pgAdmin con el cual manejaremos la base de datos de Postgres. Pasos: inicio Todos los programas PostgreSQL 8.2 o la versión 9 (o una versión superior) Luego de haberlo ejecutado maximizamos el programa para una mayor comodidad en su manejo. 2. Luego en la parte izquierda, nos aparecerá el servidor PostgreSQL 8.2 (o más servers), con una xal comienzo de este, que indica que no se ha realizado la conexión con el servidor. Debemos dar doble clic en el servidor deseado ( ) y una vez hecho esto nos aparecerá una ventana, con una alerta, la cual nos pide la contraseña de seguridad para poder conectarnos con el servidor. Digitamos la contraseña que por defecto es “123456” ó “admin”. Y luego le damos en OK. Una vez hecho esto nos aparecerán las Bases de Datos ya creadas y si es la primera vez, nos aparecerá la BD de postgres por default.

Querys basicos posgresql

  • Upload
    edsn

  • View
    4

  • Download
    0

Embed Size (px)

DESCRIPTION

2.1. Conceptos básicos de SQLSQL (Structured Query Language), Lenguaje Estructurado de Consulta es el lenguaje utilizado para definir, controlar y acceder a los datos almacenados en una base de datos relacional.Como ejemplos de sistemas gestores de bases de datos que utilizan SQL podemos citar DB2, SQL Server, Oracle, MySql, Sybase, PostgreSQL o Access.El SQL es un lenguaje universal que se emplea en cualquier sistema gestor de bases de datos relacional. Tiene un estándar definido, a partir del cual cada sistema gestor ha desarrollado su versión propia. En SQL Server la versión de SQL que se utiliza se llama TRANSACT-SQL.EL SQL en principio es un lenguaje orientado únicamente a la definición y al acceso a los datos por lo que no se puede considerar como un lenguaje de programación como tal ya que no incluye funcionalidades como son estructuras condicionales, bucles, formateo de la salida, etc. (aunque veremos que esto está evolucionando).Se puede ejecutar directamente en modo interactivo, pero también se suele emplear embebido en programas escritos en lenguajes de programación convencionales. En estos programas se mezclan las instrucciones del propio lenguaje (denominado anfitrión) con llamadas a procedimientos de acceso a la base de datos que utilizan el SQL como lenguaje de acceso. Como por ejemplo en Visual Basic, Java, C#, PHP .NET, etc.Las instrucciones SQL se clasifican según su propósito en tres grupos:El DDL (Data Description Language) Lenguaje de Descripción de Datos.El DCL (Data Control Language) Lenguaje de Control de Datos.El DML (Data Manipulation Language) Lenguaje de Manipulación de Datos.

Citation preview

  • I 2015 LaboratorioPostgres 1 Fundamentos y Diseo de Base de Datos

    Ing.Harvey Michael Gamboa Pea Universidad de Pamplona - Ext. Villa Rosario

    CREACION DE BASE DE DATOS EN POSTGRESQL 1. Primero abrimos el aplicativo pgAdmin con el cual manejaremos la base de datos de Postgres.

    Pasos: inicio Todos los programas PostgreSQL 8.2 o la versin 9 (o una versin superior)

    Luego de haberlo ejecutado maximizamos el programa para una mayor comodidad en su manejo. 2. Luego en la parte izquierda, nos aparecer el servidor PostgreSQL 8.2 (o ms servers), con una xal

    comienzo de este, que indica que no se ha realizado la conexin con el servidor.

    Debemos dar doble clic en el servidor deseado ( ) y una vez hecho esto nos aparecer una ventana, con una alerta, la cual nos pide la contrasea de seguridad para poder conectarnos con el servidor. Digitamos la contrasea que por defecto es 123456 admin. Y luego le damos en OK.

    Una vez hecho esto nos aparecern las Bases de Datos ya creadas y si es la primera vez, nos aparecer la BD de postgres por default.

  • I 2015 LaboratorioPostgres 1 Fundamentos y Diseo de Base de Datos

    Ing.Harvey Michael Gamboa Pea Universidad de Pamplona - Ext. Villa Rosario

    3. Ahora vamos a crear nuestra propia BD. Para esto debemos tener el Modelo Relacional previamente hecho. Vamos a tomar como ejemplo la BD de un horario, para esto se debe tener una materia, un estudiante y un docente. La relacin es la sgteESTUDIANTE MATERIA PROFESOR, un estudiante ve una o ms materias y una materia puede ser vista por uno o ms estudiantes, por otro lado un profesor dicta una materia pero una materia solo puede ser dada por un profesor. Nota: la relacin ESTUDIANTE MATERIA, es de muchos a muchos, lo que puede generar problemas en la

    BD, para lo cual se debe realizar un proceso de normalizacin, dando como resultado una tabla intermedia ESTUDIANTE - ESTMAT MATERIA. Esto lo veremos ms adelante.

    Procedemos a crear nuestra BD Horario. Para ello vamos a pgAdmin y damos clic derecho sobre Databases y seleccionamos New Database.

    Luego nos aparecer una pequea ventana, y en la parte que dice Name, escribimos el nombre de la BD que queremos crear, en este caso Horario y luego le damos OK.

  • I 2015 LaboratorioPostgres 1 Fundamentos y Diseo de Base de Datos

    Ing.Harvey Michael Gamboa Pea Universidad de Pamplona - Ext. Villa Rosario

    Esperamos pocos segundos mientras se crea. Despus nos aparecer en la parte izquierda, dentro de las Databases creadas (junto con la de postgres) sin conexin, entonces lo que hacemos es, dar doble clic y nos aparecer la BD conectada.

    4. Ya creada la BD, desplegamos el + de Horario, luego el + de Schemas, y el + de public.

    5. Una vez tengamos el cursor en la BD Horario, de damos clic izquierdo y lo seleccionamos. Luego dirigimos el cursor a la parte superior, donde se encuentran los iconos de funcionalidades y damos clic en el icono con el crculo rojo, que corresponde a lenguaje SQL.

    6. Ahora crearemos las tablas de la BD Horario. Empezaremos por la tabla estudiante.

    Primero digitaremos el cdigo mostrado en la imagen y luego haremos clic en el triangulo verde u oprimimos la tecla F5, para correr las instrucciones SQL y crear la tabla ESTUDIANTE.

  • I 2015 LaboratorioPostgres 1 Fundamentos y Diseo de Base de Datos

    Ing.Harvey Michael Gamboa Pea Universidad de Pamplona - Ext. Villa Rosario

    Nos aparecer el siguiente mensaje, que nos indica que la consulta se realizo con xito.

    7. Ahora insertaremos registros en la tabla ESTUDIANTE. Primero abriremos una nueva ventana para trabajar SQL, o eliminamos las instrucciones anteriores y dejamos en blanco. Ahora realizamos las instrucciones SQL dadas en la siguiente figura, que nos permitir insertar los registros de los estudiantes. Corremos la consulta con F5, o hacemos clic en el triangulo verde

    Si no hay errores en cdigo SQL, nos arrojara el siguiente mensaje indicando xito.

    Verificamos los datos insertados en pgAdmin. Primero, posicionamos el cursor del mouse sobre la tabla ESTUDIANTE y le damos clic derecho y Refresh para actualizar la tabla.

    Segundo debemos seleccionar la tabla ESTUDIANTE, y despus damos clic en el icono con el crculo rojo, en la funcionalidad ubicada en la parte superior, llamada vista de datos.

    Nos aparecer una nueva ventana de la tabla ESTUDIANTE, con los datos insertados.

    8. Hacemos lo mismo para la tabla PROFESOR. Primero creamos la tabla PROFESOR.

    Ejecutamos el SQL, con F5, con Ctrl+E o con en el triangulo verde

  • I 2015 LaboratorioPostgres 1 Fundamentos y Diseo de Base de Datos

    Ing.Harvey Michael Gamboa Pea Universidad de Pamplona - Ext. Villa Rosario

    El mensaje anterior nos indica que la tabla PROFESOR se cre con xito. Seguidamente procederemos a insertar los datos del profesor.

    Corremos el SQL, con F5, con Ctrl+E o con en el triangulo verde

    Despus vamos al pgAdmin. Seleccionamos Tables y le damos clic derecho Refresh. Luego seleccionamos la tabla PROFESOR y damos clic en el icono vista de datos. Y de esta forma verificamos los datos insertados.

    9. Ahora creamos la tabla MATERIA, que est relacionada con la tabla ESTUDIANTE y con la tabla PROFESOR mediante una llave fornea (FK), que referencia el campo cod_est en la tabla MATERIA con el campo cod_est de la tabla ESTUDIANTE, y el campo cod_prof de la tabla MATERIA con el campo cod_prof de la tabla PROFESOR.

    Creamos la tabla ejecutando el siguiente SQL.

    Si la consulta corri con xito saldr este mensaje

    Ahora insertamos en la tabla MATERIA

    Si se ejecuta con xito, saldr el siguiente mensaje

  • I 2015 LaboratorioPostgres 1 Fundamentos y Diseo de Base de Datos

    Ing.Harvey Michael Gamboa Pea Universidad de Pamplona - Ext. Villa Rosario

    Refrescamos las tablas y verificamos los datos insertados en la tabla MATERIA

    Nota: Ir guardando el SQL en un bloc de notas. Incluir comentarios o documentacin. A esto le llamaremos posteriormente Script

    Ya hemos definido la BD de horario, ahora realizaremos modificaciones sobre la misma y aplicaremos unas sencillas restricciones para los campos de acuerdo a las necesidades requeridas. 10.

    -- Seleccionar los datos de la tabla estudiante SELECT * FROM ESTUDIANTE ; -- Aadir columna o campo ALTER TABLE ESTUDIANTE ADD COLUMN edad INTEGER ; -- Renombrar columna ALTER TABLE ESTUDIANTE RENAME COLUMN edad TOedad_est; -- Cambiar el tipo de dato de un campo ALTER TABLE ESTUDIANTE ALTERedad_estTYPE NUMERIC ; -- Eliminar un campo o columna de una tabla con registros asociados ALTER TABLE ESTUDIANTE DROP COLUMNcod_est ; -- no se puede eliminar una campo si este tieneregistros asociados -- Eliminar un campo o columna de una tabla ALTER TABLE ESTUDIANTE DROP COLUMNedad_est ; -- Aadir una llave primaria en una tabla ALTER TABLE MATERIA ADD PRIMARY KEY (cod_mat); -- Eliminar la llave primaria de una tabla ALTER TABLE MATERIA DROP CONSTRAINTmateria_pkey -- Creamos una nueva tabla llamada PROGRAMA para trabajar sobre ella CREATE TABLE PROGRAMA ( cod_progNUMERIC NOT NULL, nom_progVARCHAR(30), facultadVARCHAR(30), PRIMARY KEY(cod_prog) ); -- Cambiar o renombrar la tabla ALTER TABLE PROGRAMA RENAME TODEPARTAMENTO ; -- Eliminar tabla DROP TABLEDEPARTAMENTO ;

  • I 2015 LaboratorioPostgres 1 Fundamentos y Diseo de Base de Datos

    Ing.Harvey Michael Gamboa Pea Universidad de Pamplona - Ext. Villa Rosario

    -- Eliminar tabla con registros asociados DROP TABLEESTUDIANTE ; -- no se puede eliminar una tabla que tenga registros asociados -- Eliminar tabla en cascada (para tablas que tengan registros asociados) DROP TABLE NOMBRE_TABLA CASCADE ; -- Eliminar registro o fila DELETE FROM NOMBRE_TABLA WHEREid_tabla =x ; -- x hace referencia al identificador del objeto que se desea eliminar -- Eliminar registro o fila DELETE FROM MATERIA WHERE cod_mat = 86 -- 86 es el cdigo de la materia calculo ANDcod_est = 883311 -- El cdigo del estudiante Brad Pitt ANDcod_prof = 1002 ; -- El cdigo del profesor Alex Villa