quinta-feira, 29 de julho de 2021

Instalação e Configuração do SGBD PostgreSQL

Instalação e Configuração do SGBD PostgreSQL


  1. Baixar o instalador do PostgreSQL 

  2. Instalação do PostgreSQL no Windows

  3. 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


Tela de computador com texto preto sobre fundo branco

Descrição gerada automaticamente


Instalação finalizada, não precisa instalar o stack builder.


Uma imagem contendo screenshot, texto, monitor, computador

Descrição gerada automaticamente


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.


Tela de computador com texto preto sobre fundo branco

Descrição gerada automaticamente


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=#