Instalação e Configuração do SGBD PostgreSQL
Baixar o instalador do PostgreSQL
Instalação do PostgreSQL no Windows
Efetuando as operações básicas no banco de dados
1 – Baixando
Versão 9.6 (64 ou 32 bits) de acordo com arquitetura da sua máquina.
https://www.postgresql.org/download/
https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
2 – Configurando no Windows
Duplo clique no instalador a instalação irar começar.
Instalando o PostgreSQL
Instalação finalizada, não precisa instalar o stack builder.
Testando a instalação do PostgreSQL
Sql shell -> Iniciar , digite Sql e escolha o sql Shell.
No shell do postgres informar somente a senha do usuário root.
Tela de teste com sucesso.
Efetuando as operações de banco de dados.
Visual Studio Code 🡪 Editor de texto. Download do Visual Studio Code
https://code.visualstudio.com/download
-- SGBD POSTGRESQL
-- CREATE, DROP -> SQL
-- DROP DATABASE, remover uma base de dados.
DROP DATABASE aulap;
-- CREATE DATABASE, criar uma base de dados.
CREATE DATABASE aulap;
-- comandos nativos POSTGRES \
-- lista as bases de dados
\l
-- Conectar ao banco de dados
\c aulap
-- lista os objetos do banco de dados
\d
-- Tabela, Objeto do banco de dados organizado em linhas e colunas.
-- Linhas -> Registros, Colunas -> Campos do registros.
-- Tabela usado para representar a informação que será guardada.
/*
Produto -> nome, preco, quantidade.
Chave primaria (unicidade) -> responsavel pela integridade de cada registro da minha tabela.
inteiro -> 0, 1, 2, 3, 4
SERIAL -> Inteiro, Sequence
*/
-- Sequence -> uma sequencia numerica. (1 em 1)
-- 10, tv, 1200.0 , 10
-- 11, Microondas, 300.0 , 4
-- 12, Iphone, 3000.0 , 3
-- 13, Computador, 1200.0 , 2
CREATE TABLE produto(
codigo SERIAL PRIMARY KEY,
nome VARCHAR(50) NOT NULL,
preco FLOAT NOT NULL,
quantidade INT NOT NULL
);
-- Descrever a tabela, Definição
\d produto
-- objetos do banco de dados
\d
-- somente tabelas
\dt
-- INSERT, inserir dados em uma tabela.
INSERT INTO produto(nome, preco, quantidade) VALUES('TV LCD', 1200.0, 10);
INSERT INTO produto(nome, preco, quantidade) VALUES('Microondas', 230.0, 3);
INSERT INTO produto(nome, preco, quantidade) VALUES('Geladeira', 1500.0, 10);
INSERT INTO produto(nome, preco, quantidade) VALUES('Iphone', 4000.0, 2);
INSERT INTO produto(nome, preco, quantidade) VALUES('PS4', 1200.0, 10);
INSERT INTO produto(nome, preco, quantidade) VALUES('Computador', 3000.0, 2);
INSERT INTO produto(nome, preco, quantidade) VALUES('PS5', 5000.0, 3);
-- SELECT, seleção (consultas)
SELECT nome, preco FROM produto;
-- (*) -> todos os campos
SELECT * FROM produto;
-- LIMIT -> limitar a quantidade de registros
SELECT * FROM produto limit 3;
-- DELETE, remover um registro
-- WHERE, filtro
DELETE FROM produto WHERE codigo = 1;
-- UPDATE, atualização dos campos
UPDATE produto SET nome = 'Iphone XR' , preco = 3400.0, quantidade = 12
WHERE codigo = 4;
-- SELECT , order by
SELECT * FROM produto order by preco ASC;
SELECT * FROM produto order by preco DESC;
Server [localhost]:
Database [postgres]:
Port [5432]:
Username [postgres]:
Password for user postgres:
psql (9.6.10)
Type "help" for help.
postgres=# DROP DATABASE aulap;
DROP DATABASE
postgres=# CREATE DATABASE aulap;
CREATE DATABASE
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
------------------+----------+----------+---------+-------+-----------------------
aula | postgres | UTF8 | C | C |
aulabancodedados | postgres | UTF8 | C | C |
aulap | postgres | UTF8 | C | C |
aular | postgres | UTF8 | C | C |
aulateste | postgres | UTF8 | C | C |
doacaotcc | postgres | UTF8 | C | C |
postgres | postgres | UTF8 | C | C |
projeto_banco | postgres | UTF8 | C | C |
sadpa | postgres | UTF8 | C | C |
template0 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
testedb | postgres | UTF8 | C | C |
(12 rows)
postgres=#
postgres=#
postgres=#
postgres=#
postgres=# \c aulap
You are now connected to database "aulap" as user "postgres".
aulap=#
aulap=#
aulap=#
aulap=#
aulap=#
aulap=#
aulap=#
aulap=# \d
No relations found.
aulap=#
aulap=#
aulap=#
aulap=# CREATE TABLE produto(
aulap(# codigo SERIAL PRIMARY KEY,
aulap(# nome VARCHAR(50) NOT NULL,
aulap(# preco FLOAT NOT NULL,
aulap(# quantidade INT NOT NULL
aulap(# );
CREATE TABLE
aulap=# \d produto
(END)
aulap=# \dt
List of relations
Schema | Name | Type | Owner
--------+---------+-------+----------
public | produto | table | postgres
(1 row)
aulap=# \d
List of relations
Schema | Name | Type | Owner
--------+--------------------+----------+----------
public | produto | table | postgres
public | produto_codigo_seq | sequence | postgres
(2 rows)
aulap=# INSERT INTO produto(nome, preco, quantidade) VALUES('TV LCD', 1200.0, 10);
INSERT 0 1
aulap=#
aulap=# INSERT INTO produto(nome, preco, quantidade) VALUES('Microondas', 230.0, 3);
INSERT 0 1
aulap=# INSERT INTO produto(nome, preco, quantidade) VALUES('Geladeira', 1500.0, 10);
INSERT 0 1
aulap=# INSERT INTO produto(nome, preco, quantidade) VALUES('Iphone', 4000.0, 2);
INSERT 0 1
aulap=# INSERT INTO produto(nome, preco, quantidade) VALUES('PS4', 1200.0, 10);
INSERT 0 1
aulap=# INSERT INTO produto(nome, preco, quantidade) VALUES('Computador', 3000.0, 2);
INSERT 0 1
aulap=# INSERT INTO produto(nome, preco, quantidade) VALUES('PS5', 5000.0, 3);
INSERT 0 1
aulap=# SELECT nome, preco FROM produto;
nome | preco
------------+-------
TV LCD | 1200
Microondas | 230
Geladeira | 1500
Iphone | 4000
PS4 | 1200
Computador | 3000
PS5 | 5000
(7 rows)
aulap=# SELECT * FROM produto;
codigo | nome | preco | quantidade
--------+------------+-------+------------
1 | TV LCD | 1200 | 10
2 | Microondas | 230 | 3
3 | Geladeira | 1500 | 10
4 | Iphone | 4000 | 2
5 | PS4 | 1200 | 10
6 | Computador | 3000 | 2
7 | PS5 | 5000 | 3
(7 rows)
aulap=#
aulap=# SELECT * FROM produto limit 3;
codigo | nome | preco | quantidade
--------+------------+-------+------------
1 | TV LCD | 1200 | 10
2 | Microondas | 230 | 3
3 | Geladeira | 1500 | 10
(3 rows)
aulap=#
aulap=# DELETE FROM produto WHERE codigo = 1;
DELETE 1
aulap=#
aulap=# SELECT * FROM produto limit 3;
codigo | nome | preco | quantidade
--------+------------+-------+------------
2 | Microondas | 230 | 3
3 | Geladeira | 1500 | 10
4 | Iphone | 4000 | 2
(3 rows)
aulap=# SELECT * FROM produto;
codigo | nome | preco | quantidade
--------+------------+-------+------------
2 | Microondas | 230 | 3
3 | Geladeira | 1500 | 10
4 | Iphone | 4000 | 2
5 | PS4 | 1200 | 10
6 | Computador | 3000 | 2
7 | PS5 | 5000 | 3
(6 rows)
aulap=# UPDATE produto SET nome = 'Iphone XR' , preco = 3400.0, quantidade = 12
aulap-# WHERE codigo = 4;
UPDATE 1
aulap=# SELECT * FROM produto; codigo | nome | preco | quantidade
--------+------------+-------+------------
2 | Microondas | 230 | 3
3 | Geladeira | 1500 | 10
5 | PS4 | 1200 | 10
6 | Computador | 3000 | 2
7 | PS5 | 5000 | 3
4 | Iphone XR | 3400 | 12
(6 rows)
aulap=# SELECT * FROM produto order by preco;
codigo | nome | preco | quantidade
--------+------------+-------+------------
2 | Microondas | 230 | 3
5 | PS4 | 1200 | 10
3 | Geladeira | 1500 | 10
6 | Computador | 3000 | 2
4 | Iphone XR | 3400 | 12
7 | PS5 | 5000 | 3
(6 rows)
aulap=# SELECT * FROM produto order by preco ASC;
codigo | nome | preco | quantidade
--------+------------+-------+------------
2 | Microondas | 230 | 3
5 | PS4 | 1200 | 10
3 | Geladeira | 1500 | 10
6 | Computador | 3000 | 2
4 | Iphone XR | 3400 | 12
7 | PS5 | 5000 | 3
(6 rows)
aulap=#
aulap=# SELECT * FROM produto order by preco DESC;
codigo | nome | preco | quantidade
--------+------------+-------+------------
7 | PS5 | 5000 | 3
4 | Iphone XR | 3400 | 12
6 | Computador | 3000 | 2
3 | Geladeira | 1500 | 10
5 | PS4 | 1200 | 10
2 | Microondas | 230 | 3
(6 rows)
aulap=#