Aprenda a usar a base de dados Pagila para testes no PostgreSQL

Aprenda a usar a base de dados Pagila para testes no PostgreSQL

Quando comecei aprender sobre banco de dados, senti falta de bases de dados prontas para fins de teste com o PostgreSQL. Eu queria aplicar conceitos aprendidos sobre SELECT, INSERT, UPDATE e DELETE em uma base pronta para aprofundar meu aprendizagem mas não tinha uma base funcional. Depois de muita procura encontrei a base de dados PAGILA, uma massa de dados voltada para testes e desenvolvimento.

Neste post, você irá aprender a usar esta base de dados Pagila para que possa aplicar seus próprios testes e alavancar seu aprendizado.

Pagila é uma base de dados de exemplo para PostgreSQL pronta para uso e é baseada na base Sakila feita para mySQL

Este post se baseia na versão 10.3 do PostgreSQL, mas os comandos apresentados servirão em qualquer versão superior à 9.1.

Ative a base de dados Pagila

Com usuário root, execute os comandos a seguir:

root@localhost:~ wget https://anonscm.debian.org/cgit/pkg-postgresql/postgresql-common.git/plain/pgdg/apt.postgresql.org.sh
root@localhost:~ bash apt.postgresql.org.sh
This script will enable the PostgreSQL APT repository on apt.postgresql.org on
your system. The distribution codename used will be stretch-pgdg.</code>

Press Enter to continue, or Ctrl-C to abort.
#Pressione enter

root@localhost:~ apt install postgresql -y
root@localhost:~ systemctl enable postgresql

Agora baixe o utilitário unzip, logue no usuário postgres e crie a base de dados:

root@localhost:~$ apt install unzip
root@localhost:~$ su - postgres
postgres@localhost:~$ wget http://pgfoundry.org/frs/download.php/1719/pagila-0.10.1.zip
postgres@localhost:~$ unzip pagila-0.10.1.zip
postgres@localhost:~$ psql -c 'CREATE DATABASE PAGILA;'
postgres@localhost:~$ psql -d pagila -f pagila-0.10.1/pagila-schema.sql
postgres@localhost:~$ psql -d pagila -f psql -d pagila -f pagila-0.10.1/pagila-data.sql
#Observação: Os arquivos pagila-data.sql e pagila-insert-data.sql fazem a mesma coisa, porém de formas diferentes. O primeiro insere dados através do comando COPY, e o seguinte, através de simples INSERTs.

A partir deste ponto, temos uma base de dados completamente funcional.

Alguns comandos básicos

A base de dados Pagila consiste na modelagem de um schema para uma locadora de filmes, à estilo Blockbuster. Nele temos as tabelas atores (actors), filmes(films), tabelas de relacionamento entre os mesmos, além de um inventário geral que conecta filmes, lojas e aluguéis.

Para listar as tabelas, logue no banco de dados pagila e execute o comando \dt.

postgres@localhost:~$ psql -d pagila
pagila=# \dt

Para selecionar o ator que mais fez filmes, podemos executar a seguinte query:

pagila=#
#Copie e cole a seguinte query:
SELECT first_name, last_name, count(*) films
FROM actor AS a
JOIN film_actor AS fa USING (actor_id)
GROUP BY actor_id, first_name, last_name
ORDER BY films DESC
LIMIT 1;
#O resultado será:
first_name | last_name | films
------------+-----------+-------
GINA       | DEGENERES |    42

No post a seguir, vamos aprender como usar o pgAdmin4, uma ferramenta web para consultas no PostgreSQL através do Docker, conectando-se ao bando de dados Pagila.

Anterior Transformação Digital em Cooperativa de Crédito com Plataforma de Ensino a Distância
Próxima Novo curso DevOps: Práticas de Continuos Monitoring na 4Linux

About author

Arlindo Neto
Arlindo Neto 7 posts

Arlindo Neto é administrador de banco de dados apaixonado por PostgreSQL. Cursa Ciência da Computação. Atua com foco em banco de dados open-source, possuindo 3 anos de experiência profissional em análise e engenharia de dados. Acumula experiência em projetos envolvendo PostgreSQL, MariaDB, MySQL e MongoDB. No momento vem atuando com Python, com ênfase em aplicações para Big Data. Possui expertise como professor, desenvolvendo e aplicando cursos sobre Linux e tecnologias Open Source, detém certificação EnterpriseDB PostgreSQL 9.6

View all posts by this author →

Você pode gostar também

Monitoramento TI

Guia prático para atualizar o Zabbix 4.0 LTS para a 5.0 LTS

Assim como muitas ferramentas Open Source, o Zabbix vem aprimorando seus recursos através de um ciclo contínuo de desenvolvimento sempre tentando atender as necessidades de clientes e da própria comunidade,

Infraestrutura TI

Conhecendo o kernel Linux pelo /proc (parte 5) – Recursos da memória virtual

No post anterior vimos comportamentos relacionados ao uso de memória de virtual, como a “sobre-alocação” de memória, uso de SWAP, estouro de memória RAM e o que pode ocorrer em

Desenvolvimento

Entenda o Middleware: A espinha dorsal da conectividade digital

No cenário tecnológico atual, a conectividade é a espinha dorsal que sustenta nossa vida digital. Imagine um ecossistema complexo de aplicativos, serviços e dispositivos, todos operando em conjunto perfeito. Essa