Principais comandos SQL com Postgresql
Esse artigo é para auxiliar iniciantes que queiram conhecer os principais comandos de banco de dados SQL. Você poderá executar em qualquer banco de dados. Veja mais.
Para começar vamos criar um banco de dados. Para esse artigo vou usar o Postgresql (versão 9.1), ele é gratuito e fácil de usar. Caso você queira baixa-lo, aqui está o link para o download. Para lhe auxiliar melhor, aumentando suba base de conhecimento sobre o PostgreSQL 9.1, você pode consultar meu artigo que te ensina a como instalar PostgreSQL 9.1 - A instalação é fácil e muito rápida. Recomendo a leitura :).
Comandos SQL
Em nossa primeira tela, vamos abrir o pgAdmin - é onde vamos executar os comandos.
Agora vamos abrir o servidor local.
Clique no banco de dados postgres, é o banco de dados default. Depois clique no icone SQL para que possamos criar o banco de dados.
Create Database - SQL
Vamos usar nosso primeiro comando sql, o CREATE DATABASE, o nome do banco de dados será DB_Endereco.
CREATE DATABASE DB_Endereco;
Clique a tecla F5 e espere o comando ser executado.
Pronto criamos o nosso banco de dados, agora feche essa janela e de um refresh no nó Databases, verifique que nosso banco de dados foi criado, clique nele no banco de dados e depois clique de novo no icone Sql.
Comando Create Table - SQL
Com a nova janela aberta vamos criar nossas tabelas. Vamos utilizar nosso segundo comando Sql, o CREATE TABLE. A estrutura do comano é essa:
CREATE TABLE tbPais( bgId INT NOT NULL (NOT NULL indica que o campo não pode ser nulo, se for
permitido nulo é só colocar NULL) ,vcDescricao character varying(50) NOT NULL , PRIMARY KEY
(bgId) (O comando PRIMARY KEY indica que o campo é chave primária, o campo não permiti valor
duplicado, é único na tabela) )
Crie as outras tabelas do nosso banco de dados. É só apagar o comando da janela e copiar cada comando create na janela e clicar a tecla F5.
CREATE TABLE tbEstado( bgId INT NOT NULL ,vcDescricao character varying(70) NOT NULL ,vcUF
character varying(2) NULL ,bgIdPais INT NOT NULL , PRIMARY KEY(bgId) ) CREATE TABLE tbCidade
( bgId INT NOT NULL ,vcDescricao character varying(70) NOT NULL ,bgIdEstado INT NOT NULL
, PRIMARY KEY(bgId) ) CREATE TABLE tbBairro( bgId INT NOT NULL ,vcDescricao character
varying(70) NOT NULL ,bgIdCidade INT NOT NULL , PRIMARY KEY(bgId) ) CREATE TABLE tbLogradouro
( bgId INT NOT NULL ,vcDescricao character varying(70) NOT NULL ,vcCEP character varying(8)
NOT NULL ,bgIdBairro INT NOT NULL , PRIMARY KEY(bgId) )
Criar chaves estrangeiras - SQL
Agora vamos criar as chaves estrangeiras. Chave estrangeira é um campo que aponta para a chave primária de outra tabela, em vez de criamos um campo vcPais na tabela tbEstado, nós criamos um campo bgIdPais que vai ser chave estrangeira, com isso nós criamos o relacionamento entre as tabelas tbPais e tbEstado. Agora vamos executar o comando que criar a chave estrangeira.
ALTER TABLE tbEstado (Comando para alterar a tabela) ADD CONSTRAINT tbEstado_bgIdPais
(Nome da chave estrangeira) FOREIGN KEY (bgIdPais ) (Campo que vai ser a chave estrangeira)
REFERENCES "tbPais" (bgId) (Campo que é chave primária da outra tabela).
Aqui são os comandos para criar as chaves estrangeiras.
ALTER TABLE tbEstado ADD CONSTRAINT tbEstado_bgIdPais FOREIGN KEY (bgIdPais) REFERENCES
tbPais(bgId) ALTER TABLE tbCidade ADD CONSTRAINT tbCidade_bgIdEstado FOREIGN KEY (bgIdEstado)
REFERENCES tbEstado(bgId) ALTER TABLE tbBairro ADD CONSTRAINT tbBairro_bgIdCidade FOREIGN KEY
(bgIdCidade) REFERENCES tbCidade (bgId) ALTER TABLE tbLogradouro ADD CONSTRAINT
tbLogradouro_bgIdBairro FOREIGN KEY (bgIdBairro) REFERENCES tbBairro (bgId)
É so apagar o comando da janela e copiar cada comando na janela e clicar a tecla F5.
Comando INSERT INTO - SQL
Vamos inserir nos primeiros registros, vamos utilizar o comando INSERT INTO. INSERT INTO nomeTabela (campos da tabela) VALUES (valores que serão inseridos).
O comando insert retornou um erro, isso acontece porque não existe o registro 1 na tabela tbPais, essa é uma segurança para o nosso banco, ele não permite colocar ids que não existe. A ordem que estão os comandos é importante para inserir os registros no nosso banco de dados.
--INSERINDO NA TABELA tbPais INSERT INTO tbPais(bgId, vcDescricao) VALUES(1, 'Brasil');
INSERT INTO tbPais(bgId, vcDescricao) VALUES(2, 'Estados Unidos');
--INSERINDO NA TABELA tbEstado INSERT INTO tbEstado(bgId, vcDescricao, vcUF, bgIdPais) VALUES
(1, 'São Paulo', 'SP', 1); INSERT INTO tbEstado(bgId, vcDescricao, vcUF, bgIdPais)
VALUES(2, 'Rio de Janeiro', 'RJ', 1); INSERT INTO tbEstado(bgId, vcDescricao, vcUF, bgIdPais)
VALUES(3, 'Califórnia', NULL, 2); --INSERINDO NA TABELA tbCidade INSERT INTO tbCidade bgId,
vcDescricao, bgIdEstado) VALUES(1, 'São Bernardo do Campo', 1); INSERT INTO tbCidade (bgId,
vcDescricao, bgIdEstado) VALUES(2, 'Rio de Janeiro', 2); INSERT INTO tbCidade
(bgId, vcDescricao,
bgIdEstado) VALUES(3, 'Alameda', 3);--INSERINDO NA TABELA tbBairro INSERT INTO tbBairro(bgId,
vcDescricao, bgIdCidade) VALUES(1, 'Baeta Neves', 1); INSERT INTO tbBairro(bgId, vcDescricao,
bgIdCidade) VALUES(2, 'Mariópolis', 2); INSERT INTO tbBairro(bgId, vcDescricao, bgIdCidade)
VALUES
(3, 'River Way', 3); --INSERINDO NA TABELA tblogradouro INSERT INTO tblogradouro
(bgId, vcDescricao,
vcCep, bgIdBairro) VALUES(1, 'Rua Barretos', '09751450', 1); INSERT INTO tblogradouro
(bgId, vcDescricao,
vcCep, bgIdBairro) VALUES(2, 'Rua 1', '12345678', 2); INSERT INTO tblogradouro
(bgId, vcDescricao,
vcCep, bgIdBairro) VALUES(3, 'Wind', '12345678', 3);
Comando SELECT - SQL
Vamos agora fazer uma consulta com o comando SELECT.
Comandos INNER JOIN e WHERE - SQL
Agora vamos trazer os registros da tabela tbEstado com o nome do pais que o estado pertence. Vamos usar o comando INNER JOIN e WHERE.
Para atualizar os registros vamos utilizar o comando UPDATE. Vamos atualizar os registros da tabela tbLogradouro, para não atualizar todos os registros vamos utilizar o comando WHERE que serve para filtrar a consulta.
Comando SQL
UPDATE tbLogradouro SET
vcDescricao = 'Wind 2'
,vcCep = '04774577'
WHERE
bgId = 3
Executa o comando SELECT de novo e verifique que os dados foram alterados.
SELECT L.bgId, L.vcDescricao AS 'Rua', B.vcDescricao AS 'Bairro' FROM tbLogradouro AS L
INNER JOIN tbBairro AS B ON L.bgIdBairro = B.bgId WHERE l.bgId = 3
comandos DELETE e WHERE - SQL
Agora vamos executar nosso último comando, vamos utilizar os comandos DELETE e WHERE, utilizado para excluir os registros no SQL. Vamos tentar rodar o comando abaixo:
DELETE FROM tbBairro
A execução do comando retorna um erro, isso acontece porque os registros da tabela tbBairro estão sendo utilizados na tabela tbLogradouro. Agora vamos executar o comando abaixo:
DELETE FROM tbLogradouro WHERE bgId = 1;
DELETE FROM tbLogradouro;
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo