Criação e Inserção de Dados

Criação da Tabela produtos com Restrições

CREATE TABLE produtos (
id SERIAL PRIMARY KEY,
nome VARCHAR(100) NOT NULL,
categoria VARCHAR(50) NOT NULL,
preco DECIMAL(10, 2) NOT NULL,
estoque INT NOT NULL );

CREATE TABLE produtos (
id SERIAL PRIMARY KEY,
nome VARCHAR(100) NOT NULL,
categoria VARCHAR(50) NOT NULL,
preco DECIMAL(10, 2) NOT NULL,
estoque INT NOT NULL );

Inserção de Dados na Tabela

INSERT INTO produtos (nome, categoria, preco, estoque) VALUES ('Celular', 'Eletrônicos', 1500.00, 10), ('Notebook', 'Eletrônicos', 3500.00, 5), ('Cadeira Gamer', 'Móveis', 800.00, 20), ('Mesa', 'Móveis', 300.00, 15), ('Monitor', 'Eletrônicos', 1200.00, 8);


Restrições (Constraints)

1. PRIMARY KEY

2. NOT NULL

3. UNIQUE

4. DEFAULT


Tipos de Dados Comuns no PostgreSQL

1. SERIAL

2. VARCHAR(n)

3. TEXT

4. INT (ou INTEGER)

5. DECIMAL (ou NUMERIC)

6. FLOAT


Diferença Entre VARCHAR e TEXT

CaracterísticaVARCHARTEXT
Tamanho MáximoLimitado pelo valor “n”.Ilimitado.
PerformanceMelhor em validações.Sem validação de tamanho.
Uso ComumDados com limite fixo.Dados grandes e variáveis.

Operações SQL

Exemplo de SELECT

SELECT * FROM produtos;

Exemplo de INSERT

INSERT INTO produtos (nome, categoria, preco, estoque) VALUES ('Teclado', 'Eletrônicos', 150.00, 30);

Exemplo de UPDATE

UPDATE produtos SET preco = 1400.00 WHERE id = 5;

Exemplo de DELETE

DELETE FROM produtos WHERE id = 4;


Exemplo com FLOAT

Criação da Tabela com FLOAT

CREATE TABLE produtos ( id INT PRIMARY KEY, nome VARCHAR(100) NOT NULL, categoria VARCHAR(50) NOT NULL, preco FLOAT NOT NULL, estoque INT NOT NULL );

Inserção de Dados com FLOAT

INSERT INTO produtos (id, nome, categoria, preco, estoque) VALUES (1, 'Celular', 'Eletrônicos', 1500.99, 10), (2, 'Notebook', 'Informática', 3500.49, 5), (3, 'Fone de Ouvido', 'Acessórios', 199.99, 50);


Este guia combina a criação de tabelas, manipulação de dados e explicações sobre tipos de dados e restrições no SQL, ideal para iniciantes e intermediários.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *