comandos_SQL by zhangyun

VIEWS: 22 PAGES: 22

									Comandos SQL


  Profa. Andréia R. Casare
  E-mail: andreia.casare01@fatec.sp.gov.br
  www.casareandreia.gratix.com.br

                   Criado: agosto/2008
                 atualizado: agosto/2011     1
 DDL
•É o conjunto de comandos SQL responsáveis pela
definição dos dados, ou seja, pela criação de bancos,
esquemas, tabelas, campos, tipos de dados,
constraints, etc.
• Utiliza-se por convenção as palavras chaves do SQL
em maiúsculas e os identificadores dos objetos que
criamos em minúsculas.
• Para trabalhar com os comandos do SQL estaremos
utilizando o psql e o pgAdmin( gráfico).
• O psql é o programa de gerenciamento e uso do
PostgreSQL pelo usuário local. Com ele podemos fazer
praticamente tudo que se pode fazer com o PG.
                         Criado: agosto/2008
                     atualizado: agosto/2011            2
 Alguns comandos do psql
\h - para ajuda com comandos SQL
\? - para ajuda com comandos do psql
\g ou terminar com ponto e vírgula para executar a
   consulta
; - é o comando para indicar ao PG que execute nossa
   seqüência de comandos
\q - para sair
\l - lista bancos, donos e codificação
\d <nome da tabela> - descreve tabela, índice,
   seqüência ou view (visão)
                        Criado: agosto/2008
                      atualizado: agosto/2011          3
 Alguns comandos do psql
\du   - lista usuários e permissões
\dg - lista grupos
\dp - lista privilégios de acesso à tabelas, views
(visões) e seqüências
\dt - lista tabelas do banco
\r – limpa o buffer psql
\c <nomebanco> <usuario> - se conectar a um novo
banco




                       Criado: agosto/2008
                     atualizado: agosto/2011         4
  Criando um banco
CREATE DATABASE nome;

Exemplos:
     CREATE DATABASE locadoras;
     CREATE DATABASE folhas;




                      Criado: agosto/2008
                    atualizado: agosto/2011   5
 Excluindo o banco
DROP DATABASE nomebanco;

Exemplos:
       DROP DATABASE locadoras;
       DROP DATABASE folhas;




                   Criado: agosto/2008
                 atualizado: agosto/2011   6
  Criando uma tabela
CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE
nome_tabela ( [ { nome_coluna tipo_dado [ DEFAULT
expressão_padrão ] [ restrição_coluna [ ... ] ]
| restrição_tabela
| LIKE tabela_pai [ { INCLUDING | EXCLUDING } DEFAULTS ] }
[, ... ]
])
[ INHERITS ( tabela_pai [, ... ] ) ]
[ WITH OIDS | WITHOUT OIDS ]
[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]
[ TABLESPACE tablespace ]



                            Criado: agosto/2008
                          atualizado: agosto/2011            7
  Exemplo de criação de uma tabela
CREATE TABLE tabela (
   campo1 integer,
   campo2 text
 );
Exemplos:
      CREATE TABLE cliente( codigo integer,
nome text, endereco text);

       CREATE TABLE fita(cod_fit integer,
descricao text, valor numeric);
                       Criado: agosto/2008
                     atualizado: agosto/2011   8
  Excluindo uma tabela
DROP TABLE nome_tabela;

Exemplos:
      DROP TABLE cliente;
      DROP TABLE fita;




                      Criado: agosto/2008
                    atualizado: agosto/2011   9
Criando tabelas com valor
default (padrão)
CREATE TABLE produtos (
  produto_no integer PRIMARY KEY,
  descricao text,
  preco numeric DEFAULT 9.99
);


                Criado: agosto/2008
              atualizado: agosto/2011   10
   Inserindo registros nas tabelas
INSERT INTO nome_tabela (campos) values (valores dos
campos)

Exemplos:

     INSERT INTO cliente (codigo, nome, endereco)
values ( 1, ‘Andréia’, ‘Rua 11 de agosto);

       INSERT INTO fita (cod_fit, descricao, valor) values
(1, ‘A Era do gelo’, 15.00);

                           Criado: agosto/2008
                         atualizado: agosto/2011             11
Inserindo registros
   Tabelas com campo do tipo serial
       INSERT INTO autor(nome) values (‘Paulo
        coelho);




                      Criado: agosto/2008
                    atualizado: agosto/2011      12
   Fazendo consultas
SELECT * FROM nome_tabela;
=>retorna todos os registros da tabela com todos os
campos

SELECT codigo, nome FROM nome_tabela;
=> Retorna todos os registros da tabela com os campos:
codigo e nome

Exemplos:
  SELECT * FROM cliente;

                               cliente;
 SELECT codigo, nome FROM agosto/2008
                       Criado:
                         atualizado: agosto/2011         13
    Chave primária
• A chave primária de uma tabela é formada
internamente pela combinação das constraints UNIQUE
e NOT NULL.
• Uma tabela pode ter no máximo uma chave primária. A
teoria de bancos de dados relacional dita que toda
tabela deve ter uma chave primária.
•O PostgreSQL não obriga que uma tabela tenha chave
primária, mas é recomendável, a não ser que esteja
criando uma tabela para importar de outra que contenha
registros duplicados para tratamento futuro ou algo
parecido ou apenas para testes.
                          Criado: agosto/2008
                        atualizado: agosto/2011          14
   Exemplo de tabela com chave
   primária
CREATE TABLE produtos (
   cod_prod integer UNIQUE NOT NULL,
   nome text,
   preco numeric
);

CREATE TABLE produtos (
   cod_prod integer PRIMARY KEY,
   nome text,
   preco numeric
);
                          Criado: agosto/2008
                        atualizado: agosto/2011   15
   Chave primária composta
Chave primária formada por mais de um campo

Exemplo:

CREATE TABLE exemplo (
    a integer,
    b integer,
    c integer,
   PRIMARY KEY (a, c)
);

                           Criado: agosto/2008
                         atualizado: agosto/2011   16
Chave estrangeira
   Criadas com o objetivo de relacionar duas tabelas,
    mantendo a integridade referencial entre ambas.
    Especifica que o valor da coluna (ou grupo de
    colunas) deve corresponder a algum valor existente
    em um registro da outra tabela. Normalmente
    queremos que na tabela estrangeira existam somente
    registros que tenham um registro relacionado na
    tabela principal. Como também controla a remoção
    de registros na tabela principal que tenha registros
    relacionados na estrangeira.

                        Criado: agosto/2008
                      atualizado: agosto/2011         17
    Exemplo chave estrangeira
   Tabela principal
     CREATE TABLE produtos (
      cod_prod integer PRIMARY KEY,
      nome text,
      preco numeric );
   Tabela referenciada
     CREATE TABLE pedidos (
       cod_pedido integer PRIMARY KEY,
       cod_prod integer,
       quantidade integer,
       CONSTRAINT pedidos_fk FOREIGN KEY (cod_prod)
     REFERENCES produtos (cod_prod) );
                            Criado: agosto/2008
                          atualizado: agosto/2011     18
    Outro maneira de criar a FK
   Tabela referenciada
    CREATE TABLE pedidos (
      cod_pedido integer PRIMARY KEY,
      cod_prod integer REFERENCES produtos(cod_prod),
      quantidade integer);




                         Criado: agosto/2008
                       atualizado: agosto/2011          19
Alterando registros (tuplas)
   Sintaxe
       Update tabela set campo = valor, campo =
        valor where campo = valor;
   Exemplo
       UPDATE cliente set endereco = ‘Rua 11’,
        cidade=‘Tietê’ WHERE cod= 1;



                       Criado: agosto/2008
                     atualizado: agosto/2011      20
    Excluindo registros
•   Sintaxe:
     • DELETE FROM tabela WHERE campo = valor;




•   Exemplo:
     • DELETE FROM cliente WHERE cod_cli = 1;




                      Criado: agosto/2008
                    atualizado: agosto/2011     21
    Referências
   http://pgdocptbr.sourceforge.net/pg82/




                          Criado: agosto/2008
                        atualizado: agosto/2011   22

								
To top