PostgreSQL - PowerPoint PPT Presentation

1 / 15
About This Presentation
Title:

PostgreSQL

Description:

Su antecesor fue Ingres, desarrollado en Berkeley (1977-1985) y fue una de las ... PostgreSQL usa un modelo de ... Para borrar el buffer se teclea r. ... – PowerPoint PPT presentation

Number of Views:256
Avg rating:3.0/5.0
Slides: 16
Provided by: tine4
Category:

less

Transcript and Presenter's Notes

Title: PostgreSQL


1
PostgreSQL
2
Historia de PostgreSQL
  • Es una base de datos de código abierto
  • Su antecesor fue Ingres, desarrollado en Berkeley
    (1977-1985) y fue una de las bases de datos para
    servidor comercialmente más exitosas.
  • En 1996 cambia de nombre de Postres95 a PostreSQL.

3
Iniciando una sesión
  • PostgreSQL usa un modelo de comunicación
    cliente/servidor. Esto significa que el servidor
    está esperando las solicitudes de los clientes,
    las procesa y regresa el resultado.
  • La interface psql permite interactuar con
    PostgreSQL.
  • Para iniciar una sesión
  • psql
  • Para crear una base de datos
  • create database test
  • \q para salir de PostgreSQL
  • Para conectarse a una base de datos hay que
    teclear
  • psql test
  • En este caso test es el nombre de la base de
    datos, pero puede ser cualquier otro.
  • Hay que diferenciar entre mayúsculas y minúsculas

4
Controlando una sesión
  • Una vez conectados al servidor PostgreSQL,
    teclear lo siguiente
  • testgtSELECT CURRENT_USER
  • Esto debe mostar el login name bajo la línea
    punteada.
  • La línea testgt indica que el servidor está
    esperando el siguiente query.
  • Teclear SELECT CURRENT_TIMESTAMP
  • Esto debe mostrar la fecha y la hora actual.

5
Query multi-línea
  • En psql los comandos se completan cuando ponemos
    un ó \g.
  • Por ejemplo
  • testgt SELECT
  • test-gt 1 3
  • test -gt Esto debe responder con un 4
  • Hay que notar que el prompt cambia de gt a -gt
    para indicar que aún no finaliza el query.
  • PostgreSQL no le importa si los queries están en
    mayúsculas o en minúsculas.
  • Por claridad se recomienda escribir palabras
    especiales en mayúsculas.
  • Con las teclas de las flechas derecha e izquierda
    puedes recorrer lo que escribes, con las flechas
    arriba y abajo recuperar líneas previamente
    escritas.

6
Query buffer y help
  • Se puede teclear indefinidamente, hasta que se
    use el punto y coma o la diagonal invertida-g.
    Todo esto se irá guardando en el query buffer.
  • Si se teclea \p, se puede ver todo lo acumulado
    en el query buffer.
  • Para borrar el buffer se teclea \r.
  • \? Imprime todos los comandos que inician con
    diagonal invertida
  • Para salir de una sesión usar \q.

7
Comandos básicos en SQL
  • CREATE TABLE crear una tabla
  • INSERT INTO insertar datos en una tabla
  • SELECT desplegar datos
  • Renglones específicos con WHERE
  • DELETE remover datos
  • UPDATE reemplazar ó actualizar datos
  • ORDER BY ordenar el resultado
  • DROP TABLE destruir una tabla

8
Tipos más comunes de datos
categoría tipo descripción
Cadena de caracteres CHAR(long) VARCHAR(long) Long. fija de almacenam. Long. variable de almacenamiento
Número INTEGER FLOAT NUMERIC(precisión, decimal) Entero, /- 2 billones Punto decimal, 15 dígitos Número usando una definición de precisión y de número de decimales.
Fecha/hora DATE TIME TIMESTAMP Fecha Hora Fecha y hora
9
test gt CREATE TABLE alltypes( test(gt estado
CHAR(3), test(gt nombre char (20), test(gt hijo
INTEGER, test(gt distancia FLOAT, test(gt
presupuesto NUMERIC(16,2), test(gt nacimiento
DATE, test(gt llegada TIME, test(gt inicio
TIMESTAMP) CREATE TABLE test gt
10
INSERT INTO alltypes test -gt VALUES( test(gt
'MEX', test(gt 'Mauricio', test(gt 0, test(gt
10.7, test(gt 6289.08, test(gt '14/08/1984', test(gt
'745', test(gt '25/03/2007 103000') INSERT 0
1
11
Usando valores NULL
  • NULL es un valor especial que es válido en
    cualquier columna. Lo usamos cuando se desconoce
    el valor o cuando no aplica.
  • test gt INSERT INTO alltypes (estado, nombre)
  • test -gt VALUES ('AGS', 'Gabriel')
  • test gt select from alltypes
  • En algunas columnas no se insertó valor, Qué
    contienen?
  • test gt SELECT FROM alltypes WHERE hijo IS
    NULL
  • Hay diferencia entre cero y NULL (hijo-gtMauricio
    y Gabriel)
  • test gt SELECT FROM alltypes WHERE hijo ltgt 100
  • Los que tienen NULL en la columna hijos no
    aparecen
  • test gt INSERT INTO alltypes (estado, nombre)
  • test -gt VALUES ('', 'Arturo') ES UNA CADENA
    BLANK, LOS CAMPOS NUMERICOS NO PUEDEN SER BLANK
  • test -gt VALUES (NULL, 'José')
  • test gt SELECT FROM alltypes WHERE estado IS
    NULL
  • test gt SELECT FROM alltypes WHERE estado ''

12
NULL vs blank
  • Una columna tipo cadena de caracteres además de
    ser NULL, también puede ser blank. Un campo
    numérico no puede ser blank, solo NULL.
  • test gt INSERT INTO alltypes (estado, nombre)
  • test -gt VALUES ('', 'Arturo')
  • test -gt VALUES (NULL, 'José')
  • test gt SELECT FROM alltypes WHERE estado IS
    NULL
  • test gt SELECT FROM alltypes WHERE estado ''

13
Valores Default
  • Cuando no se da un valor a la columna se le
    asigna un NULL.
  • Cuando creamos una tabla, con la palabra clave
    DEFAULT en la columna, podemos dar un valor
    cuando no se asigne alguno.
  • Por ejemplo, para la columna timestamp el valor
    de default puede ser una variable interna de
    PostgrSQL que regresa la fecha y la hora actual.

14
Otro ejemplo
  • testgt CREATE TABLE cuenta (
  • test(gt nombre VARCHAR(20),
  • test(gt balance NUMERIC(16,2) DEFAULT 0,
  • test(gt activa CHAR(2) DEFAULT 'SI',
  • test(gt creada TIMESTAMP DEFAULT
    CURRENT_TIMESTAMP)
  • testgt \d cuenta
  • testgt INSERT INTO cuenta (nombre)
  • test-gt VALUES ('Palacio de Hierro')
  • testgt SELECT FROM cuenta

15
Ejemplo
  • test gt ALTER TABLE alltypes ALTER inicio
  • test -gt SET DEFAULT CURRENT_TIMESTAMP
  • ALTER TABLE
  • test gt INSERT INTO alltypes (estado, nombre)
  • test -gt VALUES ('MEX', 'Melissa')
  • INSERT 0 1
  • test gt SELECT FROM alltypes
Write a Comment
User Comments (0)
About PowerShow.com