ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO FACULTAD DE CIENCIAS ESCUELA DE FISICA Y MATEMATICAS INGENIERÍA EN ESTADÍSTICA INFORMATICA BASE DE DATOS I TEMA: PostgreSQL INTEGRANTES: KAREN GUAMAN MARCO OROZCO BELEN PAUCAR GUIDO CELI
DOCENTE(A): Ing. Lourdes Paredes NIVEL: Cuarto PARALELO: “A”
JUSTIFICACION .................................................................................................................................... 3 OBJETIVOS ........................................................................................................................................... 4 GENERAL.......................................................................................................................................... 4 ESPECIFICOS .................................................................................................................................... 4 INTRODUCCION ................................................................................................................................... 5 CAPITULO I .......................................................................................................................................... 5 1.
¿Qué es la Postgre? ................................................................................................................. 5 1.1.
¿Quién maneja PostgreSQL? ........................................................................................... 6
CAPITULO 2 ......................................................................................................................................... 7 2.
Sintaxis SQL ................................................................................................................................. 7
2.1.
Palabras clave .......................................................................................................................... 7 2.1.1.
Palabra clave reservada .............................................................................................. 7
CAPITULO 3 ......................................................................................................................................... 8 3.1.
Modelo de datos relacional................................................................................................. 8
3.2.
Formalidades del Modelo de Datos Relacional ................................................................... 8
3.2.1.
Algebra relacional............................................................................................................ 8
INSTALACIÓN DEL PROGRAMA ........................................................................................................... 9 CONCLUSIONES ................................................................................................................................. 26 RECOMENDACION ............................................................................................................................. 27 Bibliografía ........................................................................................................................................ 27
JUSTIFICACION La siguiente investigación tiene como finalidad conocer más acerca de PostdreSql el cuales un sistema de gestión de base de datos relacional orientado a objetos y libre, publicado bajo la licencia PostgreSQL, similar a la BSD o la MIT. Al investigar acerca de este sistema de gestión de base de datos, nos proporcionara los conocimientos necesarios para poder utilizarlo de mejor manera, ya que un conocimiento previo es necesario para el uso correcto de todo software. La información será extraída de libros y páginas web las cuales se encuentran al alcance de todos.
OBJETIVOS GENERAL
Aprender sobre el sistema de gestión de base de datos PostgreSQL con conexión a java.
ESPECIFICOS
Conocer el origen de PostgreSQL Aprender la terminología empleada Investigar las operaciones que se pueden realizar
INTRODUCCION PostgreSQL es un sistema de gestión de bases de datos objeto-relacional, distribuido bajo licencia BSD y con su código fuente disponible libremente. Es el sistema de gestión de bases de datos de código abierto más potente del mercado y en sus últimas versiones no tiene nada que envidiarle a otras bases de datos comerciales. PostgreSQL utiliza un modelo cliente/servidor y usa multiprocesos en vez de multihilos para garantizar la estabilidad del sistema. Un fallo en uno de los procesos no afectará el resto y el sistema continuará funcionando. Además, es un sistema de gestión de base de datos relacional y libre, que agiliza la interacción de cliente, servidor y base de datos, donde postgreSQL es el que realiza la mayoría del trabajo referente a bases de datos cuando se le hacen peticiones. Como muchos otros proyectos open source, el desarrollo de PostgreSQL no es manejado por una sola compañía sino que es dirigido por una comunidad de desarrolladores y organizaciones comerciales las cuales trabajan en su desarrollo. Dicha comunidad es denominada el PGDG (PostgreSQL Global Development Group).
CAPITULO I 1. ¿Qué es la Postgre?
PostgreSQL es un sistema de base de datos objeto-relacional que tiene las características de los sistemas de base de datos propietarios tradicionales con mejoras de los sistemas de base de datos de la nueva generación. PostgreSQL es libre y el código fuente completo está disponible. (Alegsa, 2010) El desarrollo de PostgreSQL es realizado por un equipo conformado en su mayoría por desarrolladores voluntarios esparcidos por todo el mundo, que se comunican vía Internet. Es un proyecto de comunidad y no está controlado por ninguna compañía. Si bien 2ndQuadrant está muy bien representado entre estos desarrolladores voluntarios, no hay bajo ninguna circunstancia una entidad comercial controladora, ni ninguna otra compañía. Postgres es un sobrenombre usado ampliamente para referirse a PostgreSQL. Era el nombre original del proyecto en la Universidad de Berkeley en California. Para más información sobre esto, vea PostgreSQL – La historia hasta ahora. Si se le hace difícil pronunciar ‘PostgreSQL’, llámelo ‘Postgres’ en su lugar. (Ltd, 2016) 1.1. ¿Quién maneja PostgreSQL? El proyecto es dirigido por la comunidad de desarrolladores y usuarios, a la cual cualquiera se puede unir y tener sus contribuciones juzgadas estrictamente en el mérito. (Ltd, 2016) 1.1.1. ¿Qué plataformas son soportadas por PostgreSQL? En general, cualquier plataforma moderna compatible con Unix, como Linux, Mac OS X y FreeBSD, puede ejecutar PostgreSQL, así como Microsoft Windows. PostgreSQL no depende en el comportamiento de ninguna arquitectura en particular, por lo que casi se puede asegurar que cualquier arquitectura soportada por estos sistemas operativos es soportada por PostgreSQL. (Alegsa, 2010)
CAPITULO 2 2. Sintaxis SQL Una descripción de la sintaxis general de SQL.SQL manipula un conjunto de datos. El lenguaje está compuesto por varias palabras clave. Se permite expresiones aritméticas y procedimentales. Nosotros trataremos estos temas en este capítulo; en los sucesivos capítulos incluiremos detalles de los tipos de datos, funciones, y operadores. (www.monje.enoble.com, 2009)
2.1. Palabras clave SQL92 define Palabras Clave para el lenguaje que tienen un significado específico. Algunas palabras están reservadas, lo cual indica que su aparición está restringida sólo en ciertos contextos. Otras Palabras clave no están restringidas, lo cual indica que en ciertos contextos tienen un significado especifico pero no es obligatorio. Postgres implementa un subconjunto lenguajes SQL92 y SQL3 lenguajes.
extendido
de
los
Algunos elementos del lenguaje no están tan restringidos en esta implementación como en los lenguajes estándar, en parte debido a las características extendidas de Postgres. Información sobre las palabras clave de SQL92 y SQL3 son derivadas de Date and Darwen, 1997. (Alegsa, 2010)
2.1.1. Palabra clave reservada
SQL92 y SQL3 tienen Palabras clave reservadas las cuales no están permitidas ni como identificador ni para cualquier uso distinto de señales fundamentales en declaraciones SQL.
Postgres tiene palabras clave adicionales con las mismas restricciones. En particular, estas palabras clave no están permitidas para nombre de tablas o campos, aunque en algunos casos están permitidas para ser etiquetas de columna (pe. en la cláusula AS). (Jara)
CAPITULO 3 3.
3.1. Modelo de datos relacional Una base de datos relacional es una base de datos que se percibe por los usuarios como una colección de tablas (y nada más que tablas). Una tabla consiste en filas y columnas, en las que cada fila representa un registro, y cada columna representa un atributo del registro contenido en la tabla. (Ltd, 2016) 3.2. Formalidades del Modelo de Datos Relacional El concepto matemático que subyace bajo el modelo relacional es la relación de la teoría de conjuntos, la cual es un subconjunto del producto cartesiano de una lista de dominios. Esta relación de la teoría de conjuntos proporciona al modelo su nombre (no confundir con la relación del Modelo Entidad-Relación). Formalmente, un dominio es simplemente un conjunto de valores. Una Relación es cualquier subconjunto del producto cartesiano de uno o más dominios: R ⊆ D1 × D2 × ... × Dk . Los miembros de una relación se llaman tuplas. Cada relación de algún producto cartesiano D1 × D2 × ... × Dk se dice que tiene nivel k y de este modo es un subconjunto de k-tuplas. Un esquema relacional es sólo un juego de plantillas mientras que una relación es un ejemplo de un esquema relacional. La relación consiste en las tuplas (y pueden ser vistas como una tabla); no así el esquema relacional. (Ltd, 2016) 3.2.1. Algebra relacional
SELECT (σ): extrae tuplas a partir de una relación que satisfagan una restricción dada. Sea R una tabla que contiene un atributo A. σA=a(R) = {t ∈ R | t(A) = a} donde t denota una tupla de R y t(A) denota el valor del atributo A de la tupla t.
PROJECT (π): extrae atributos (columnas) específicos de una relación. Sea R una relación que contiene un atributo X. πX (R) = {t(X) | t ∈ R}, donde t(X) denota el valor del atributo X de la tupla t. PRODUCT (×): construye el producto cartesiano de dos relaciones. Sea R una tabla de rango (arity) k1 y sea S una tabla con rango (arity) k2 . R × S es el conjunto de las k1 + k2 -tuplas cuyos primeros k1 componentes forman una tupla en R y cuyos últimos k2 componentes forman una tupla en S. UNION (∪): supone la unión de la teoría de conjuntos de dos tablas. Dadas las tablas R y S (y ambas deben ser del mismo rango), la unión R ∪ S es el conjunto de las tuplas que están en R S o en las dos. INTERSECT (∩): Construye la intersección de la teoría de conjuntos de dos tablas. Dadas las tablas R y S, R ∪ S es el conjunto de las tuplas que están en R y en S>. De nuevo requiere que R y S tengan el mismo rango. DIFFERENCE (- or r): supone el conjunto diferencia de dos tablas. Sean R y S de nuevo dos tablas con el mismo rango. R - S Es el conjunto de las tuplas que están en R pero no en S. JOIN (Q ): conecta dos tablas por sus atributos comunes. Sea R una tabla con los atributos A,B y C y sea S una tabla con los atributos C,D y E. Hay un atributo común para ambas relaciones, el atributo C. R Q S = πR.A,R.B,R.C,S.D,S.E(σR.C=S.C(R × S)). (Hispan, 2003)
INSTALACIÓN DEL PROGRAMA
CREACIÓN DE TABLAS
Tabla de nacionalidad
Tabla de autor
Código de relación
Conectar a una base de datos postgres con java
CONSULTAS
CONCLUSIONES Al finalizar este trabajo se puede decir que se ha adquirido los conceptos fundamentales acerca del trabajo con bases de datos relacionales mediante el uso de PostgreSQL, se han aprendido aspectos de instalación, configuración, creación y administración de sistemas de bases de datos, as´ı como también aspectos teóricos acerca de los fundamentos del modelo de datos relacional, sobre el cual está basado el sistema de bases de datos y acerca de la forma en que interactúa el sistema de bases de datos con el sistema operativo. Después de haber realizado la investigación acerca del tema, existe mucha más claridad acerca de los aspectos a considerar al momento de decidirse a utilizar un sistema de bases de datos y de las ventajas y limitaciones que tiene este sistema y algunos de sus pares
RECOMENDACION Recomendamos a todos los jóvenes y personas que les gusta Base de Datos o que trabajen en el área utilicen este programa ya que es rápido, sencillo y fácil de manejar.
Bibliografía (s.f.). Obtenido de http://www.genbetadev.com/bases-de-datos/fundamento-de-las-bases-dedatos-modelo-entidad-relacion
Alegsa, L. (05 de 12 de 2010). Alegsa.com.ar. Obtenido de http://www.alegsa.com.ar/Dic/redundancia%20de%20datos.php Hispan, M. S. (29 de Mayo de 2003). mysql-hispano. Obtenido de http://www.eet2mdp.edu.ar/alumnos/MATERIAL/MATERIAL/info/infonorma.pdf Jara, P. (s.f.). Obtenido de http://ccdoc-basesdedatos.blogspot.com/2013/02/modelo-entidadrelacion-er.html Ltd, 2. (07 de 12 de 2016). 2ndQuadrant Ltd. Obtenido de https://2ndquadrant.com/es/postgresql/preguntas-frecuentes-de-postgresql/ www.monje.enoble.com. (05 de Frebrero de 2009). SlideShare. Obtenido de http://es.slideshare.net/MonjeOneble/formas-normales