UNIVERSIDAD CIENTÍFICA DEL SUR
FACULTAD DE INGENIERIA DE SISTEMAS
Introducción
El Sistema Gestor de Bases de Datos Relacio...
Taller de base de datos Ing. Elio Leguía Loayza
PostgreSQLsoportaintegridadreferencial,lacual esutilizadaparagarantizarla ...
Taller de base de datos Ing. Elio Leguía Loayza
Meta-Comandos
Psql acepta un conjunto de meta-comandos, los cuales son ini...
Taller de base de datos Ing. Elio Leguía Loayza
Aquí podemosejecutartodaslasinstruccionesporejemplo:
Crear una base de dat...
Taller de base de datos Ing. Elio Leguía Loayza
Ingresandoa pgAdmin III
Nosmuestrala siguientepantalla
Despuésde colocarla...
Taller de base de datos Ing. Elio Leguía Loayza
Seguidamente si todomarchabiennospresentael entornode gestionde labase de ...
Taller de base de datos Ing. Elio Leguía Loayza
En estaventanapodemosingresarcualquiertipode instrucciónSQL
Instrucciones ...
Taller de base de datos Ing. Elio Leguía Loayza
Importante:
Para crear nuestra base de datos debemos considerar que debe a...
Taller de base de datos Ing. Elio Leguía Loayza
Creando tablas
Luegode crear nuestrabase de datosnos disponemosyaacrear la...
Taller de base de datos Ing. Elio Leguía Loayza
Se ejecutautilizandolateclaF5o hacer clicen
Insertando datos a las tablas
...
Taller de base de datos Ing. Elio Leguía Loayza
Insertandodatosa latabla alumno
INSERT INTOalumnoVALUES(‘001’,’Rivas’,’Qui...
Taller de base de datos Ing. Elio Leguía Loayza
Actualizando datos de las tablas (UPDATE)
Para actualizarlosdatos de lasta...
Taller de base de datos Ing. Elio Leguía Loayza
EjemploEliminartodalafiladel alumnoRivasQuintanaCesar
DELETE FROM alumnoWH...
Upcoming SlideShare
Loading in …5
×

Base de datos_-_material_didactico

828 views

Published on

Published in: Education, Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
828
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
43
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Base de datos_-_material_didactico

  1. 1. UNIVERSIDAD CIENTÍFICA DEL SUR FACULTAD DE INGENIERIA DE SISTEMAS Introducción El Sistema Gestor de Bases de Datos Relacionales Orientadas a Objetos conocido como PostgreSQL está derivado del paquete Postgres escrito en Berkeley. Con cerca de una década de desarrollo tras él, PostgreSQL es el gestor de bases de datos de código abierto más avanzado hoy en día, ofreciendo control de concurrencia multi-versión, soportando casi toda la sintaxis SQL (incluyendo subconsultas, transacciones, tipos y funciones definidas por el usuario), contando también con un amplio conjunto de enlaces con lenguajes de programación (incluyendo C, C++, Java, perl, tcl y python). Características de PostgreSQL Como ya comentamos anteriormente, PostgreSQL está considerado como la base de datos de código abierto más avanzada del mundo. PostgreSQL proporciona un gran número de características que normalmente sólo se encontraban en las bases de datos comerciales tales como DB2 u Oracle. La siguiente es una breve lista de algunas de esas características, a partir de PostgreSQL 7.1.x. DBMS Objeto-Relacional PostgreSQLaproximalosdatosa unmodeloobjeto-relacional,yescapazde manejar complejasrutinasyreglas. Ejemplosde suavanzadafuncionalidadsonconsultasSQL declarativas,control de concurrenciamulti-versión,soportemulti-usuario, transactions,optimizaciónde consultas,herencia,yarrays. Altamente_Extensible PostgreSQLsoportaoperadores,funcionesmétodosde accesoytiposde datos definidosporel usuario. Soporte_SQL_Comprensivo PostgreSQLsoportalaespecificaciónSQL99e incluye característicasavanzadastales como lasuniones(joins) SQL92. IntegridadReferencial BASE DE DATOS RELACIONAL MATERIAL DIDÁCTICO
  2. 2. Taller de base de datos Ing. Elio Leguía Loayza PostgreSQLsoportaintegridadreferencial,lacual esutilizadaparagarantizarla validez de losdatos de la base de datos. API Flexible La flexibilidaddel APIde PostgreSQLhapermitidoalosvendedoresproporcionar soporte al desarrollo fácilmente parael RDBMSPostgreSQL.Estasinterfacaesincluyen ObjectPascal,Python,Perl,PHP,ODBC,Java/JDBC,Ruby,TCL,C/C++, y Pike. LenguajesProcedurales PostgreSQLtiene soporte paralenguajesproceduralesinternos,incluyendoun lenguaje nativodenominadoPL/pgSQL.Este lenguajeescomparable al lenguaje procedural de Oracle,PL/SQL.Otra ventajade PostgreSQLessuhabilidadparausar Perl,Python,oTCL como lenguaje procedural embebido. MVCC MVCC,o Control de ConcurrenciaMulti-Versión(Multi-VersionConcurrencyControl), esla tecnologíaque PostgreSQLusapara evitarbloqueosinnecesarios.Si algunavezha usadoalgúnDBMS con capacidadesSQL,tal comoMySQL o Access,probablemente habrá notadoque hay ocasionesenlasunalecturatiene que esperarparaaccedera informaciónde labase de datos.La esperaestáprovocadapor usuariosque están escribiendoenlabase de datos.Resumiendo,el lectorestábloqueadoporlos escritoresque estánactualizandoregistros. Mediante el usode MVCC, PostgreSQLevitaeste problemaporcompleto.MVCCestá consideradomejorque el bloqueoanivel de filaporque unlectornuncaesbloqueado por un escritor.Ensu lugar,PostgreSQLmantiene unarutaa todas lastransacciones realizadasporlosusuarios de labase de datos.PostgreSQLescapaz entoncesde manejarlosregistrossinnecesidadde que losusuariostenganque esperaraque los registrosesténdisponibles. Cliente/Servidor PostgreSQLusauna arquitecturaproceso-por-usuariocliente/servidor. Estaessimilar al métododel Apache 1.3.x para manejarprocesos.Hayun procesomaestroque se ramificapara proporcionarconexionesadicionalesparacadacliente que intente conectar a PostgreSQL. Psql La herramienta para trabajar en consola o en modo línea de comandos con PostgreSQL es psql. En este modo tenemos una herramienta completa para poder manipular las bases de datos, Desde crear hasta consultas, funciones, etc. Este programa cuenta con ayuda en línea, por medio de la instrucción ?, para los comandos a psql y h para examinar la sintáxis de las instrucciones de SQL.
  3. 3. Taller de base de datos Ing. Elio Leguía Loayza Meta-Comandos Psql acepta un conjunto de meta-comandos, los cuales son iniciados por el caracter "". Este comando se executa por el promp psql,. Algunos meta-comandos útiles:  l: lista de todas las bases de dados existentes  d tabla: muestra todas as columnas de la realcion  h [comando]: ayuda relativa al comando  i fichero: Para ejecutar un script desde un archivo  o fichero: Los resultados producidos por la consulta son redireccionados hacia un archivo  ?: ayuda sobre los meta-comandos Ingresando apsql Después de indicar la clave nos muestra la siguiente ventana de consola.
  4. 4. Taller de base de datos Ing. Elio Leguía Loayza Aquí podemosejecutartodaslasinstruccionesporejemplo: Crear una base de datos: Postgres=#CREATE DATABASE miBase; Eliminar una base de datos: Postgres=#DROP DATABASE miBase; Usar la base de datos creada: Postgres=# c miBase; Cargar un Script de instrucciones que estanguardadas enun archivo: Postgres=# i instrucciones.txt; El entorno pgAdmin III pgAdmin III es una aplicación gráfica para gestionar el gestor de bases de datos PostgreSQL, siendo la más completa y popular con licencia Open Source. Está diseñado para responder a las necesidades de todos los usuarios, desde escribir consultas SQL simples hasta desarrollar bases de datos complejas. El interfaz gráfico soporta todas las características de PostgreSQL y facilita enormemente la administración. La aplicación también incluye un editor SQL con resaltado de sintaxis, un editor de código de la parte del servidor, un agente para lanzar scripts programados, soporte para el motor de replicación Slony-I y mucho más. La conexión al servidor puede hacerse mediante conexión TCP/IP o Unix Domain Sockets (en plataformas *nix), y puede encriptarse mediante SSL para mayor seguridad
  5. 5. Taller de base de datos Ing. Elio Leguía Loayza Ingresandoa pgAdmin III Nosmuestrala siguientepantalla Despuésde colocarla contraseñaque se pusoal momentode instalarPostgreSQLoal crear usuarios. Doble clicpara conectar al servidor
  6. 6. Taller de base de datos Ing. Elio Leguía Loayza Seguidamente si todomarchabiennospresentael entornode gestionde labase de datosen POstgreSQL Una vez creadola base de datos Ingresamosal administradorde ConsultasSQL Haciendoclicenel icono Mostrando lasiguiente ventana Botónderecho para crear base de datos
  7. 7. Taller de base de datos Ing. Elio Leguía Loayza En estaventanapodemosingresarcualquiertipode instrucciónSQL Instrucciones SQL si usamosel entornopgAdminIIIparacrear nuestrabase de datoses bastante simple porque el pgAdminIIIse encargade generarel códigoSQLnecesariopara crear nuestrabase de datos tal comose vioanteriormente Creando base de Datos (CREATE DATABASE) Para crear la base de datos necesitamos utilizar la siguiente instrucción: CREATE DATABASE nombreBD Donde nombreBD es el nombre de la base de datos que vamos a crear Si quisiéramos crear la base de datos personalizado CREATE DATABASE nombreBD WITH OWNER = postgres ENCODING = 'LATIN1' TABLESPACE = pg_default;
  8. 8. Taller de base de datos Ing. Elio Leguía Loayza Importante: Para crear nuestra base de datos debemos considerar que debe almacenar todos los caracteres de nuestro idioma, para esto indicamos al momento de crear la base de datos: ENCODING=’LATIN1’ Eliminando base de datos (DROP DATABASE)Para eliminarunabase de datosutilizamoslainstrucción DROP DATABASE miBase Donde miBase eslabase de datosque queremoseliminar Tipo de datos Los tipos de datos más relevantes en Postgres definidos por el standard SQL3 se muestran en la siguiente tabla Tipos de datos del estándar SQL3 en PostgreSQL Tipo en Postgres Correspondiente enSQL3 Descripción bool Boolean valor lógico o booleano (true/false) char(n) character(n) cadena de carácteres de tamaño fijo date Date fecha (sin hora) float8 real,double precision número de punto flotante de doble precisión int2 Smallint entero de dos bytes con signo int4 int,integer entero de cuatro bytes con signo int4 decimal(87#87) número exacto con 88#88 int4 numeric(87#87) número exacto con 89#89 money decimal(9,2) cantidad monetaria time Time hora en horas,minutos, segundos y centésimas varchar(n) character varying(n) cadenade carácteresde tamaño variable
  9. 9. Taller de base de datos Ing. Elio Leguía Loayza Creando tablas Luegode crear nuestrabase de datosnos disponemosyaacrear lastablas relacionadas Por ejemplos
  10. 10. Taller de base de datos Ing. Elio Leguía Loayza Se ejecutautilizandolateclaF5o hacer clicen Insertando datos a las tablas  Los datosde tipotextoseachar o varchar se debenponerentre apostrofespor ejemplo:‘Lima’,‘Rivera’,‘001’,etc  Los de tipofechatambienentre apostrofes  Los de tiponuméricose colocantal cual,ejemplo:12435, 2345.56, etc Sintaxis para Insertar datos Por ejemplosinsertandodatosala tabladistrito INSERT INTOdistritoVALUES(‘01’,’LIMA’); INSERT INTOdistritoVALUES(‘02’,’ANCON’); INSERT INTOdistritoVALUES(‘03’,’LOSOLIVOS’); Para indicarla relación con distrito Para indicarla clave primaria
  11. 11. Taller de base de datos Ing. Elio Leguía Loayza Insertandodatosa latabla alumno INSERT INTOalumnoVALUES(‘001’,’Rivas’,’Quintana’,’Cesar’,’02’); INSERT INTOalumno VALUES(‘002’,’Castro’,’Buleje’,’Maria’,’01’); Notar que para indicarunainstruccióndebe terminarenpuntoycoma (;) Operadores de comparación Operator Description < Menor que > Mayor que <= Menor o igual que >= Mayor o igual que = Igual <> o != diferente Operadores Lógicos AND: Para que el resultado sea verdadero, ambos deben ser verdaderos. OR: Cualquierade lostérminosdebeserverdaderoque el resultadoseaverdadero NOT: Si esverdaderoel resultadoesfalsooviceversa Ejemplos 3>4 AND4<10: el resultadoesFalso 4>3 AND6<8 el resultadoesVerdadero 3>4 OR 4<10: el resultadoesVerdadero 4>3 OR 6<8 el resultadoesVerdadero
  12. 12. Taller de base de datos Ing. Elio Leguía Loayza Actualizando datos de las tablas (UPDATE) Para actualizarlosdatos de lastablasse usa lasiguiente instrucción: UPDATE miTabla SET campo1=valor1, campo2=valor2,... Ejemplos UPDATE distritoSET distrito=’LOSOLIVO’ En el ejemplosanteriorse vaa cambiar todoslosvaloresde latabla distritopor‘LOSOLIVOS’. OJO:debemostenercuidadoal actualizarde estaformadebidoaque se actualizarátodala columnacon el mismovalor Si deseamoscambiarunregistrosolamente tendríamosque utilizarunacondiciónlógicacomo se va a indicara continuación Uso de WHERE para la actualización condicional Ejemplocambiarel nombre del alumnoCastroBulejeMariapor Marta UPDATE alumno SET nombre=’Marta’ WHEREidalumno=’002’ Eliminar registros a las tablas (DELETE) Para eliminartodoslosregistrosde unatabla Ejemploeliminartodoslosregistrosde latabladistrito DELETE FROM miTabla Uso de WHERE para la eliminacióncondicional Si deseamoseliminarsololosregistrosque cumplenunacondición DELETE FROM miTabla WHERE condición
  13. 13. Taller de base de datos Ing. Elio Leguía Loayza EjemploEliminartodalafiladel alumnoRivasQuintanaCesar DELETE FROM alumnoWHERE idalumno=’001’ Conclusiones Vemosclaramente que PostgreSQLesunmotor de base de datos simple de usarcuyas instruccionesde consultaSQLsonlosmismosque para otrosmotores. Se puede agregardatos,actualizar,eliminar,etcconlasmismasinstruccionesque se pudieron utilizarenotromotor de base de datos por ejemploSQLServeroMySQL Bibliografía R. Elmasri,S.B. Navathe.“Fundamentosde Sistemasde Basesde Datos”. 3aedición,Addison-WesleyEd. [QA76.9.D3E4618]. T. Connolly,C.Begg,A. Strachan.“Database Systems”. Addison-WesleyEd.1997. [QA76.9.D26 C66]. J. C. Worsley,J.D.Drake.“Practical PostgreSQL”.O’Reilly.2002 [QA76.9.D3 W67]. “PostgreSQLDocumentation”,http://www.postgresql.org/docs

×