Escolar Documentos
Profissional Documentos
Cultura Documentos
Artigo
PostgreSQL Tutorial
Neste artigo conheceremos o PostgreSQL, desde as instruções de inserção e seleção de dados a
criação de funções e triggers, além da utilização de Views.
Guia do artigo:
Sobre o PostgreSQL 22
https://www.devmedia.com.br/postgresql-tutorial/33025 1/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
CREATE USER
CREATE DATABASE
pgAdmin III
Psql
Tablespace
Schema
Tabela de testes
Tipos de dados
Sobre o PostgreSQL
https://www.devmedia.com.br/postgresql-tutorial/33025 2/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
CREATE DATABASE
Para criar um banco de dados, você deve ser um superusuário ou ter o privilégio
especial CREATEDB. Veja o comando CREATE USER.
Por padrão, o novo banco de dados será criado clonando o modelo de banco de
dados de sistema template1. Um modelo diferente pode ser especi cado
escrevendo o nome do TEMPLATE. Em particular, ao escrever o TEMPLATE0
template0, você pode criar um banco de dados virgem contendo apenas os
objetos padrão prede nidos pela sua versão do PostgreSQL. Isso é útil se você
desejar evitar a cópia de qualquer objeto local de instalação que possa ter sido
incluído no template1.
Parâmetros
22
https://www.devmedia.com.br/postgresql-tutorial/33025 4/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
22
https://www.devmedia.com.br/postgresql-tutorial/33025 5/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
CREATE USER
Parâmetros
Se isso não for especi cado, o ID do usuário atribuído mais alto mais um (com
um mínimo de 100) será usado como padrão.
CREATEDB
22
https://www.devmedia.com.br/postgresql-tutorial/33025 6/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
CREATEUSER
ENCRYPTED
https://www.devmedia.com.br/postgresql-tutorial/33025 7/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
Observe que os clientes mais antigos podem não ter suporte para o mecanismo
de autenticação MD5 necessário para trabalhar com senhas armazenadas
criptografadas.
pgAdmin III
22
https://www.devmedia.com.br/postgresql-tutorial/33025 8/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
Psql
Agora que tivemos o conhecimento inicial das duas formas de utilização iremos
começar com a criação de uma base de dados e um tablespace, suas tabelas e
atribuir permissões de acesso a elas.
22
https://www.devmedia.com.br/postgresql-tutorial/33025 10/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
Criando o Tablespace
22
https://www.devmedia.com.br/postgresql-tutorial/33025 11/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
Agora criaremos nosso Database clicando com o botão direito sobre Databases e,
em seguida, selecionando a opção “New Database” e daremos a ele o nome de
TesteDevmedia, como podemos ver na Figura 7. E para selecionarmos a nossa
Tablespace faremos isso indo até a aba “De nition” e na tag Tablespace iremos
selecionar o que criamos anteriormente, como mostra a Figura 8.
22
https://www.devmedia.com.br/postgresql-tutorial/33025 12/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
Criação do Schema
Tabela de testes
https://www.devmedia.com.br/postgresql-tutorial/33025 13/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
Cada tabela é uma coleção constituída por linhas, onde cada uma possui o
mesmo conjunto de colunas nomeadas e para cada uma dessas colunas temos um
tipo de dados especí co. Enquanto as colunas possuem uma ordem xa em cada
linha, é importante lembrarmos que o SQL não garante a ordem das linhas dentro
da tabela.
Agora que temos a nossa estrutura de testes pronta, chegou a hora de criarmos
nossa tabela de testes, a qual chamaremos de tb_funcionarios. As tabelas são
estruturas dentro das quais temos a maior parte de nossos dados armazenados.
Além delas temos também os índices. Dentro do nosso schema podemos ver a
estrutura que tem criada, onde nela encontramos Collations, Functions, Views,
Tables, dentre outros itens, como podemos ver na Figura 9.
Criaremos então nossa tabela clicando sobre Tables (com o botão direito do
mouse) e na opção “New Table” de niremos para ela o Tablespace localizado em
22
https://www.devmedia.com.br/postgresql-tutorial/33025 14/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
22
https://www.devmedia.com.br/postgresql-tutorial/33025 15/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
22
https://www.devmedia.com.br/postgresql-tutorial/33025 16/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
Com nossa tabela criada podemos inserir alguns dados de testes, os quais
utilizaremos o Query Tools do pgAdmin III, onde passaremos a query de acordo
com a Listagem 2.
Notem que todos os tipos de dados usam um formato de entrada simples, onde as
constantes que não são valores numéricos, geralmente devem estar entre aspas
simples (').
22
https://www.devmedia.com.br/postgresql-tutorial/33025 17/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
Tipos de dados
Com relação aos tipos de dados presentes no Postgres, eles são separados em
tipos distintos, como é o caso do tipo JSON, presente desde a versão 9.2, mas com
muito mais implementações na versão 9.4. Cada um dos tipos de dados possui
uma representação externa determinada por funções de entrada e saída. Claro
que além desses tipos de dados apresentados, o banco de dados Postgres possui
muitos outros tipos.
Como simples exemplo dos tipos de dados utilizaremos o tipo json, pois ele pode
ser usado para armazenar dados no formato JSON (Notação JavaScript Object).
Estes dados podem também ser armazenados como texto, mas esse tipo tem a
vantagem de veri car se cada valor armazenado é um valor JSON válido. O
PostgreSQL permite apenas uma codi cação do servidor por banco de dados,
22
https://www.devmedia.com.br/postgresql-tutorial/33025 18/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
dessa forma, não é possível para o JSON ser utilizado de forma mais rígida com a
sua especi cação, a menos que o servidor de codi cação seja UTF-8. Caso sejam
incluídos caracteres diferentes de forma direta, estes irão falhar. Vejamos na
Listagem 3 um exemplo de utilização dos tipos de dados json e serial.
Criamos uma nova tabela “clientes” e a ela atribuímos dois campos: a chave
primária (como serial) e o campo do tipo json. Percebam que ao inserirmos os
dados, passamos eles com aspas simples (‘). Já para recuperarmos os dados salvos
na base podemos realizar a operação a seguir:
Percebam que nesta operação temos o operador (->), que retorna o tipo JSON
original, podendo este ser um objeto, o que difere do símbolo (->>) que nos
retorna um texto. Dessa forma, podemos utilizar o operador (->) para retornar
um objeto aninhado e, com isso, associar os operadores. Essa versatilidade
22
https://www.devmedia.com.br/postgresql-tutorial/33025 19/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
Com relação ao tipo de dados serial, estes não são tipos verdadeiros, mas sim
uma notação conveniente para a criação de colunas de identi cadores exclusivos,
bastante similares a colunas de auto incremento que podemos ver em outras
bases de dados.
22
https://www.devmedia.com.br/postgresql-tutorial/33025 20/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
Links:
Documentação do PostgreSQL
DownloadPostgreeSQL
Por Edson
Em 2015
Receber Newsletter
22
https://www.devmedia.com.br/postgresql-tutorial/33025 21/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
ASSINATURA DEVMEDIA
+ 800 MIL
PROGRAMADORES
69 ,90*
/ MÊS
Séries
Projetos completos
Cursos
Guias de carreiras
DevCasts
Desa os
Artigos
App
Suporte em tempo real
Assine
22
https://www.devmedia.com.br/postgresql-tutorial/33025 22/23
29/09/2019 PostgreSQL Tutorial: Introdução completa ao PostgreSQL
(21) 3593-6903
Revistas
Baixe o App
Fale conosco
Trabalhe conosco
22
https://www.devmedia.com.br/postgresql-tutorial/33025 23/23