English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriais básicos PostgreSQL

Tutoriais avançados PostgreSQL

Interface PostgreSQL

Sintaxe do PostgreSQL

Por padrão, após a instalação do PostgreSQL, ele vem com uma ferramenta de linha de comando: Shell SQL (psql).

Linux O sistema pode alternar diretamente para o usuário postgres para abrir a ferramenta de linha de comando:

# sudo -i -u postgres

Windows O sistema geralmente está na pasta de instalação:

Program Files → PostgreSQL 11.3 → Shell SQL (psql)

Mac OS Podemos simplesmente pesquisar e encontrar:

Ao entrar na ferramenta de linha de comando, podemos usar \help para verificar a sintaxe de cada comando:

postgres-# \help <nome_do_comando>

Por exemplo, vamos verificar a sintaxe da declaração SELECT:

postgres=# \help \SELECT
Command: SELECT
Description: retrieve rows from a table or view
Syntax:
[ WITH [ RECURSIVE ] with_query [, ... ] ]
SELECT [ TODOS | DIFERENTES [ ON ( expressão [ , [...] ] ) ] ]
    [ * | expression [ [ AS ] output_name ] [, ... ]
    [DE origem_item[, ...]]
    [ WHERE condition ]
    [ GROUP BY grouping_element [, ... ] ]
    [COM SEGUIMENTO condição[, ...]]
    [ WINDOW window_name AS ( window_definition ) [, ... ] ]
    [ { UNION | INTERSECT | EXCEPT } [ ALL | DISTINCT ] select ]
    [ ORDER BY expression [ ASC | DESC | USING operator ] [ NULLS { FIRST | LAST } ] [, ... ] ]
    [LIMIT {contar | TODOS}]
    [ OFFSET start [ ROW | ROWS ] ]
    [ FETCH { FIRST | NEXT } [ count ] { ROW | ROWS } ONLY ]
    [ FOR { UPDATE | NO KEY UPDATE | SHARE | KEY SHARE } [ OF table_name [, ... ] ] [ NOWAIT | SKIP LOCKED ] [...] ]
from_item can be one of the following options:
    [ SOMENTE ] nome_da_tabela [ * ] [ [ COM ] alias [ ( alias_da_coluna [ ] ) ] ]

SQL statement

A SQL statement typically includes keywords, identifiers (fields), constants, special symbols, etc. The following is a simple SQL statement:

SELECT id, name FROM w3codebox

SELECTid, nameFROMw3codebox
Symbol typeKeywordIdentifier (field)KeywordIdentifier
DescriptionCommandid and name fieldsStatement, used to set conditional rules, etc.Table name

PostgreSQL command

ABORT

ABORT is used to exit the current transaction.

ABORT [ [ WORK | TRANSACTION ] ]

ALTER AGGREGATE

Modify the definition of an aggregate function.

ALTER AGGREGATE _name_ ( _argtype_ [ , ... ] ) RENAME TO _new_name_
ALTER AGGREGATE _name_ ( _argtype_ [ , ... ] ) OWNER TO _new_owner_
ALTER AGGREGATE _name_ ( _argtype_ [ , ... ] ) SET SCHEMA _new_schema_

ALTER COLLATION

修改一个排序规则定义 。

ALTER COLLATION _name_ RENAME TO _new_name_
ALTER COLLATION _name_ OWNER TO _new_owner_
ALTER COLLATION _name_ SET SCHEMA _new_schema_

ALTER CONVERSION

修改一个编码转换的定义。

ALTER CONVERSION name RENAME TO new_name
ALTER CONVERSION name OWNER TO new_owner

ALTER DATABASE

修改一个数据库。

ALTER DATABASE name SET parameter { TO | = } { value | DEFAULT }
ALTER DATABASE name RESET parameter
ALTER DATABASE name RENAME TO new_name
ALTER DATABASE name OWNER TO new_owner

ALTER DEFAULT PRIVILEGES

定义默认的访问权限。

ALTER DEFAULT PRIVILEGES
    [ FOR { ROLE | USER } target_role [, ...] ]
    [ IN SCHEMA schema_name [, ...] ]
    abbreviated_grant_or_revoke
where abbreviated_grant_or_revoke is one of:
GRANT { { SELECT | INSERT | UPDATE | DELETE | TRUNCATE | REFERENCES | TRIGGER }
    [, ...] | ALL [ PRIVILEGES ]
    ON TABLES
    TO { [ GROUP ] role_name | PUBLIC }[, ...] [ WITH GRANT OPTION ]
...

ALTER DOMAIN

Modificar a definição de um domínio.

ALTER DOMAIN name { SET DEFAULT expression | DROP DEFAULT }
ALTER DOMAIN name { SET | DROP } NOT NULL
ALTER DOMAIN name ADD domain_constraint
ALTER DOMAIN name DROP CONSTRAINT constraint_name [ RESTRICT | CASCADE ]
ALTER DOMAIN name OWNER TO new_owner

ALTER FUNCTION

Modificar a definição de uma função.

ALTER FUNCTION name ([ type[, ...] ]) RENAME TO new_name
ALTER FUNCTION name ([ type[, ...] ]) OWNER TO new_owner

ALTER GROUP

Modificar um grupo de usuários.

ALTER GROUP groupname ADD USER username[, ...]
ALTER GROUP groupname DROP USER username[, ...]
ALTER GROUP groupname RENAME TO new_name

ALTER INDEX

Modificar a definição de um índice.

ALTER INDEX name OWNER TO new_owner
ALTER INDEX name SET TABLESPACE indexspace_name
ALTER INDEX name RENAME TO new_name

ALTER LANGUAGE

Modificar a definição de um linguagem de procedimento.

ALTER LANGUAGE name RENAME TO new_name

ALTER OPERATOR

Mudar a definição de um operador.

ALTER OPERATOR name ({ lefttype | NONE }, { righttype | NONE })
PROPRIETÁRIO PARA novo_proprietário

ALTER OPERATOR CLASS

Modify the definition of an operator class.

ALTER OPERATOR CLASS name USING index_method RENAME TO new_name
ALTER OPERATOR CLASS name USING index_method OWNER TO new_owner

ALTER SCHEMA

Modify the definition of a schema.

ALTER SCHEMA name RENAME TO new_name
ALTER SCHEMA name OWNER TO new_owner

ALTER SEQUENCE

Modify the definition of a sequence generator.

ALTER SEQUENCE name [ INCREMENT [ BY ] increment ]
[ MINVALUE minvalue | NO MINVALUE ]
[ MAXVALUE maxvalue | NO MAXVALUE ]
[ RESTART [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]

ALTER TABLE

Modify the definition of the table.

ALTER TABLE [ ONLY ] name [ * ]
action [, ... ]
ALTER TABLE [ ONLY ] name [ * ]
RENAME [ COLUMN ] column TO new_column
ALTER TABLE name
RENAME TO new_name

Where action can be one of the following options:

ADD [ COLUMN ] column_type [ column_constraint [ ... ] ]
DROP [ COLUMN ] column [ RESTRICT | CASCADE ]
ALTER [ COLUMN ] column TYPE type [ USING expression ]
ALTER [ COLUMN ] column SET DEFAULT expression
ALTER [ COLUMN ] column DROP DEFAULT
ALTER [ COLUMN ] column { SET | DROP } NOT NULL
ALTER [ COLUMN ] column SET STATISTICS integer
ALTER [ COLUMN ] column SET STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN }
ADICIONAR restrição_tabela
DROP RESTRIÇÃO nome_restrito [ RESTRICT | CASCADE ]
AGLOMERADO EM nome_indice
DEFINIR SEM AGLOMERADO
DEFINIR SEM OIDS
PROPRIETÁRIO PARA novo_proprietário
DEFINIR ESPAÇO DE TABELA nome_espaco

ALTERAR ESPAÇO DE TABELA

Modificar a definição de um espaço de tabela.

ALTERAR ESPAÇO DE TABELA nome RENOMEAR PARA novo_nome
ALTERAR ESPAÇO DE TABELA nome PROPRIETÁRIO PARA novo_proprietário

ALTERAR TRIGGER

Modificar a definição de um gatilho.

ALTERAR TRIGGER nome EM tabela RENOMEAR PARA novo_nome

ALTERAR TIPO

Modificar a definição de um tipo.

ALTERAR TIPO nome PROPRIETÁRIO PARA novo_proprietário

ALTERAR USUÁRIO

Modificar a conta de usuário do banco de dados.

ALTERAR USUÁRIO nome [ [ COM ] opção [ ...] ]
ALTERAR USUÁRIO nome RENOMEAR PARA novo_nome
ALTERAR USUÁRIO nome DEFINIR parâmetro { TO | = } { valor | PADRÃO }
ALTERAR USUÁRIO nome RESET parâmetro

Onde option pode ser -

[ ENCRYPTADO | NÃO ENCRYPTADO ] SENHA 'senha'
| CREATEDB | NOCREATEDB
| CREATEUSER | NOCREATEUSER
| VALIDO ATÉ 'abstime'

ANALISAR

Coletar estatísticas relacionadas ao banco de dados.

ANALISAR [ DETALHADO ] [ tabela [ coluna [, ...] ] ]

INICIAR

Iniciar um bloco de transação.

INICIAR [ TRABALHO | TRANSACÇÃO ] [ modo_de_transação [, ...] ]

modo_transação Pode ser uma das seguintes opções:

NÍVEL DE ISOLAMENTO { 
   SERIALIZÁVEL | LEITURA REPLICÁVEL | LER CONFIÁVEL
   | LER NÃO CONFIÁVEL
{}
LEITURA E ESCRITA | LEITURA SOMENTE

CHECKPOINT

Forçar um ponto de verificação do diary de transação.

CHECKPOINT

CLOSE

Close the cursor.

CLOSE name

CLUSTER

Sort the table clusters based on an index.

CLUSTER index_name ON table_name
CLUSTER table_name
CLUSTER

COMMENT

Define or change the annotation of an object.

COMMENT ON {
   TABLE object_name |
   COLUMN table_name.column_name |
   AGGREGATE agg_name (agg_type) |
   CAST (source_type AS target_type) |
   CONSTRAINT constraint_name ON table_name |
   CONVERSION object_name |
   DATABASE object_name |
   DOMAIN object_name |
   FUNCTION func_name (arg1_type, arg2_type, ...) |
   INDEX object_name |
   LARGE OBJECT large_object_oid |
   OPERATOR op (left_operand_type, right_operand_type) |
   OPERATOR CLASS object_name USING index_method |
   [ PROCEDURAL ] LANGUAGE object_name |
   RULE rule_name ON table_name |
   SCHEMA object_name |
   SEQUENCE object_name |
   TRIGGER trigger_name ON table_name |
   TYPE object_name |
   VIEW object_name
{} 
IS 'text'

COMMIT

Submit the current transaction.

COMMIT [ WORK | TRANSACTION ]

COPY

Copy data between table and file.

COPY table_name [ ( column[, ...] ) ]
FROM { 'filename' | STDIN }
[ WITH ]
[ BINARY ]
[ OIDS ]
[ DELIMITER [ AS ] 'delimiter' ]
[ NULL [ AS ] 'null string' ]
[ CSV [ QUOTE [ AS ] 'quote' ]
[ ESCAPE [ AS ] 'escape' ]
[ FORCE NOT NULL column[, ...] ]
COPY table_name [ ( column[, ...] ) ]
TO { 'filename' | STDOUT }
[ [ WITH ]
[ BINARY ]
[ OIDS ]
[ DELIMITER [ AS ] 'delimiter' ]
[ NULL [ AS ] 'null string' ]
[ CSV [ QUOTE [ AS ] 'quote' ]
[ ESCAPE [ AS ] 'escape' ]
[ FORCE QUOTE column [, ...] ]

CREATE AGGREGATE

定义一个新的聚集函数。

CREATE AGGREGATE name (
   BASETYPE = input_data_type,
   SFUNC = sfunc,
   STYPE = state_data_type
   [, FINALFUNC = ffunc ]
   [, INITCOND = initial_condition ]
)

CREATE CAST

定义一个用户定义的转换。

CREATE CAST (source_type AS target_type)
WITH FUNCTION func_name (arg_types)
[ AS ASSIGNMENT | AS IMPLICIT ]
CREATE CAST (source_type AS target_type)
WITHOUT FUNCTION
[ AS ASSIGNMENT | AS IMPLICIT ]

CREATE CONSTRAINT TRIGGER

定义一个新的约束触发器 。

CREATE CONSTRAINT TRIGGER name
AFTER events ON
table_name constraint attributes
FOR EACH ROW EXECUTE PROCEDURE func_name ( args )

CREATE CONVERSION

定义一个新的编码转换。

CREATE [DEFAULT] CONVERSION name
FOR source_encoding TO dest_encoding FROM func_name

CREATE DATABASE

创建新数据库。

CREATE DATABASE name
[ [ WITH ] [ OWNER [=] db_owner ]
   [ TEMPLATE [=] template ]
   [ ENCODING [=] encoding ]
   [ TABLESPACE [=] tablespace ] 
]

CREATE DOMAIN

Define um novo domínio.

CREATE DOMAIN name [AS] data_type
[ DEFAULT expression ]
[ constraint [...]]

constraint Pode ser uma das seguintes opções:

[ CONSTRAINT constraint_name ]
{ NOT NULL | NULL | CHECK(expression) }

CREATE FUNCTION

Define uma nova função.

CREATE [OR REPLACE] FUNCTION name ( [[arg_name] arg_type [, ...]] )
RETURNS ret_type
{ LANGUAGE lang_name
   | IMUTÁVEL | ESTÁVEL | VOLÁTIL
   | CHAMADO EM INPUT NULO | RETORNA NULO EM INPUT NULO | RÍGIDO
   | [EXTERNAL] SECURITY INVOKER | [EXTERNAL] SECURITY DEFINER
   | AS 'definition'
   | AS 'obj_file', 'link_symbol'
}
[WITH (attribute[, ...])]

CREATE GROUP

Define um novo grupo de usuários.

CREATE GROUP name [[WITH] option [...]]
Where a opção pode ser:
SYSID gid
| USER username [, ...]

CREATE INDEX

Define um novo índice.

CREATE [UNIQUE] INDEX name ON table [USING method]
( { column | ( expression ) } [opclass] [, ...] )
[ TABLESPACE tablespace ]
[WHERE predicate]

CREATE LANGUAGE

Define um novo linguagem de procedimento.

CREATE [TRUSTED] [PROCEDURAL] LANGUAGE name
HANDLER call_handler [ VALIDATOR val_function ]

CREATE OPERATOR

Define a new operator.

CREATE OPERATOR name (
   PROCEDURE = func_name
   [, LEFTARG = left_type ] [, RIGHTARG = right_type ]
   [, COMMUTATOR = com_op ] [, NEGATOR = neg_op ]
   [, RESTRICT = res_proc ] [, JOIN = join_proc ]
   [, HASHES ] [, MERGES ]
   [, SORT1 = left_sort_op ] [, SORT2 = right_sort_op ]
   [, LTCMP = less_than_op ] [, GTCMP = greater_than_op ]
)

CREATE OPERATOR CLASS

Define a new operator table.

CREATE OPERATOR CLASS name [ DEFAULT ] FOR TYPE data_type
USING index_method AS
{ OPERATOR strategy_number operator_name [ ( op_type, op_type ) ] [ RECHECK ] }
   | FUNCTION support_number func_name ( argument_type [, ...] )
   | STORAGE storage_type
}, [, ... ]

CREATE ROLE

Define a new database role.

CREATE ROLE _name_ [ [[ WITH ] _option_ [...] ] ]
where `_option_` can be:
      SUPERUSER | NOSUPERUSER
    | CREATEDB | NOCREATEDB
    | CREATEROLE | NOCREATEROLE
...

CREATE RULE

Define a new rewrite rule.

CREATE [ OR REPLACE ] RULE name AS ON event
TO table [ WHERE condition ]
DO [ ALSO | INSTEAD ] { NOTHING | command | ( command ; command ... ) }

CREATE SCHEMA

定义一个新模式。

CREATE SCHEMA schema_name
[ AUTHORIZATION username ] [ schema_element [ ... ] ]
CREATE SCHEMA AUTHORIZATION username
[ schema_element [ ... ] ]

CREATE SERVER

定义一个新的外部服务器。

CREATE SERVER _server_name_ [ TYPE '_server_type_' ] [ VERSION '_server_version_' ]
    FOREIGN DATA WRAPPER _fdw_name_
    [ OPTIONS ({ _option_ '_value_' [, ... ] }) ]

CREATE SEQUENCE

定义一个新序列发生器。

CREATE [ TEMPORARY | TEMP ] SEQUENCE name
[ INCREMENT [ BY ] increment ]
[ MINVALUE minvalue | NO MINVALUE ]
[ MAXVALUE maxvalue | NO MAXVALUE ]
[ START [ WITH ] start ] [ CACHE cache ] [[ NO ] CYCLE ]

CREATE TABLE

定义一个新表。

CREATE [[ GLOBAL | LOCAL ] { 
   TEMPORARY | TEMP }] TABLE table_name ({ 
      column_name data_type [{ DEFAULT default_expr } [{ column_constraint [ ... ] }]]
      | table_constraint
      | LIKE parent_table [{ INCLUDING | EXCLUDING } DEFAULTS] 
   }, [, ... ]
)
[INHERITS (parent_table [, ... ])]
[ WITH OIDS | WITHOUT OIDS ]
[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]
[ TABLESPACE tablespace ]

column_constraint Pode ser uma das seguintes opções:

[ CONSTRAINT constraint_name ] { 
   NOT NULL |
   NULL |
   UNIQUE [ USING INDEX TABLESPACE tablespace ] |
   PRIMARY KEY [ USING INDEX TABLESPACE tablespace ] |
   CHECK ( expression ) |
   REFERENCES ref_table [ ( ref_column ) ]
   [ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ]
   [ ON DELETE action ] [ ON UPDATE action ] 
{}
[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALIALLY DEFERRED | INITIALIALLY IMMEDIATE ]

table_constraint Pode ser uma das seguintes opções:

[ CONSTRAINT constraint_name ]
{ UNIQUE ( column_name [, ... ] ) [ USING INDEX TABLESPACE tablespace ] |
PRIMARY KEY ( column_name [, ... ] ) [ USING INDEX TABLESPACE tablespace ] |
CHECK ( expression ) |
FOREIGN KEY ( column_name [, ... ] )
REFERENCES ref_table [ ( ref_column [, ... ] ) ]
[ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ]
[ ON DELETE action ] [ ON UPDATE action ] }
[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALIALLY DEFERRED | INITIALIALLY IMMEDIATE ]

CREATE TABLE AS

从一条查询的结果中定义一个新表。

CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name
[ (column_name [, ...] ) ] [ [ WITH | WITHOUT ] OIDS ]
AS query

CREATE TABLESPACE

定义一个新的表空间。

CREATE TABLESPACE tablespace_name [ OWNER username ] LOCATION 'directory'

CREATE TRIGGER

定义一个新的触发器。

CREATE TRIGGER name { BEFORE | AFTER } { event [ OR ... ] }
ON table [ FOR [ EACH ] { ROW | STATEMENT } ]
EXECUTE PROCEDURE func_name ( arguments )

CREATE TYPE

定义一个新的数据类型。

CREATE TYPE name AS
( attribute_name data_type [, ... ] )
CREATE TYPE name (
INPUT = input_function,
OUTPUT = output_function
[, RECEIVE = receive_function ]
[, SEND = send_function ]
[, ANALYZE = analyze_function ]
[, INTERNALLENGTH = { internal_length | VARIABLE } ]
[, PASSEDBYVALUE ]
[, ALIGNMENT = alignment ]
[, STORAGE = storage ]
[, DEFAULT = default ]
[, ELEMENT = element ]
[, DELIMITER = delimiter ]
)

CREATE USER

创建一个新的数据库用户帐户。

CREATE USER name [ [ WITH ] option [ ... ] ]

option Pode ser uma das seguintes opções:

SYSID uid
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'
| CREATEDB | NOCREATEDB
| CREATEUSER | NOCREATEUSER
| IN GROUP group_name[, ...]
| VALID UNTIL 'abs_time'

CREATE VIEW

Definir uma visão.

CREATE [ OR REPLACE ] VIEW name [ ( column_name[, ...] ) ] AS query

DEALLOCATE

Remover uma consulta preparada.

DEALLOCATE [ PREPARE ] plan_name

DECLARE

Definir um cursor.

DECLARE name [ BINARY ] [ INSENSITIVE ] [ [ NO ] SCROLL ]
CURSOR [ { WITH | WITHOUT } HOLD ] FOR query
[ FOR { READ ONLY | UPDATE [ OF column[, ...] ] } ]

DELETE

Remover uma linha de uma tabela.

DELETE FROM [ ONLY ] table [ WHERE condition ]

DROP AGGREGATE

Remover uma função agregada definida pelo usuário.

DROP AGGREGATE name ( type ) [ CASCADE | RESTRICT ]

DROP CAST

Remover uma conversão de tipo definida pelo usuário.

DROP CAST (source_type AS target_type) [ CASCADE | RESTRICT ]

DROP CONVERSION

Remover uma conversão de codificação definida pelo usuário.

DROP CONVERSION name [ CASCADE | RESTRICT ]

DROP DATABASE

Remover um banco de dados.

DROP DATABASE name

DROP DOMAIN

Remover um domínio definido pelo usuário.

DROP DOMAIN name [, ...] [ CASCADE | RESTRICT ]

DROP FUNCTION

Remover uma função.

DROP FUNCTION name ( [ type [, ...] ] ) [ CASCADE | RESTRICT ]

DROP GROUP

Remover um grupo de usuários.

DROP GROUP name

DROP INDEX

Remover um índice.

DROP INDEX name[, [...]][ CASCADE | RESTRICT ]

DROP LANGUAGE

Exclui um idioma de procedimento.

DROP [ PROCEDURAL ] LANGUAGE name[ CASCADE | RESTRICT ]

DROP OPERATOR

Exclui um operador.

DROP OPERATOR name( { left_type | NONE }, { right_type | NONE } )
[ CASCATA | RESTRITIR ]

DROP OPERATOR CLASS

Exclui uma classe de operador.

DROP OPERATOR CLASS name USING index_method[ CASCADE | RESTRICT ]

DROP LANGUAGE

Exclui um idioma de procedimento.

DROP [ PROCEDURAL ] LANGUAGE name[ CASCADE | RESTRICT ]

DROP RULE

Exclui uma regra de rewrite.

DROP RULE name ON relation[ CASCADE | RESTRICT ]

DROP SCHEMA

Exclui um esquema.

DROP SCHEMA name[, [...]][ CASCADE | RESTRICT ]

DROP SEQUENCE

Exclui uma sequência.

DROP SEQUENCE name[, [...]][ CASCADE | RESTRICT ]

DROP TABLE

Exclui uma tabela.

DROP TABLE name[, [...]][ CASCADE | RESTRICT ]

DROP TABLESPACE

Exclui um espaço de tabela.

DROP TABLESPACE tablespace_name

DROP TRIGGER

Exclui uma definição de gatilho.

DROP TRIGGER name ON table[ CASCADE | RESTRICT ]

DROP TYPE

Exclui um tipo de dados definido pelo usuário.

DROP TYPE name[, [...]][ CASCADE | RESTRICT ]

DROP USER

Exclui uma conta de usuário de banco de dados.

DROP USER name

DROP VIEW

Exclui uma visão.

DROP VIEW name[, [...]][ CASCADE | RESTRICT ]

FIM

Submeter a transação atual.

FIM [ TRABALHO | TRANSACÇÃO ]

EXECUTAR

Executar uma consulta preparada.

EXECUTAR nome_do_plano [ (parâmetro [, ...] ) ]

EXPLAIN

Exibir o plano de execução de uma sentença.

EXPLAIN [ ANALISAR ] [ DETALHADO ] sentença

FETCH

Usar um cursor para capturar linhas de uma consulta.

FETCH [ direção { DE | EM } ] nome_do_cursor

direção Pode ser uma das seguintes opções:

PRÓXIMO
ANTERIOR
PRIMEIRO
ÚLTIMO
ABSOLUTO contagem
RELATIVO contagem
contagem
TODOS
FORWARD
FORWARD contagem
FORWARD TODOS
BACKWARD
BACKWARD contagem
BACKWARD TODOS

GRANT

Definir permissões de acesso.

GRANT { {SELECIONAR | INSERIR | ATUALIZAR | DELETAR | REGRAS | REFERÊNCIAS | TRIGGER} }
[,...] | TODOS [ PRIVILEGIOS ] }
ON [ TABELA ] table_name [, ...]
TO {usuário | GRUPO nome_do_grupo | PÚBLICO} [, ...] [ COM OPÇÃO DE GRANT]
GRANT { {CRIAR | TEMPORÁRIO | TEMP} [,...] | TODOS [ PRIVILEGIOS ] }
ON BANCO DE DADOS db_name [, ...]
TO {usuário | GRUPO nome_do_grupo | PÚBLICO} [, ...] [ COM OPÇÃO DE GRANT]
GRANT { CRIAR | TODOS [ PRIVILEGIOS ] }
ON ESPAÇO DE ARQUIVO tablespace_name [, ...]
TO {usuário | GRUPO nome_do_grupo | PÚBLICO} [, ...] [ COM OPÇÃO DE GRANT]
GRANT { EXECUTAR | TODOS [ PRIVILEGIOS ] }
ON FUNÇÃO func_name ( [type, ...] ) [, ...]
TO {usuário | GRUPO nome_do_grupo | PÚBLICO} [, ...] [ COM OPÇÃO DE GRANT]
GRANT { USO | TODOS [ PRIVILEGIOS ] }
ON LINGUAGEM nome_da_linguagem[, ...]
TO {usuário | GRUPO nome_do_grupo | PÚBLICO} [, ...] [ COM OPÇÃO DE GRANT]
GRANT { {CRIAR | USO} [,...] | TODOS [ PRIVILEGIOS ] }
ON ESQUEMA nome_do_esquema[, ...]
TO {usuário | GRUPO nome_do_grupo | PÚBLICO} [, ...] [ COM OPÇÃO DE GRANT]

INSERT

Criar uma nova linha na tabela, ou seja, inserir dados.

INSERT INTO tabela [ (coluna [, ...] ) ]
{VALORES PADRÃO | VALORES ( {expressão | PADRÃO} [, ...] ) | consulta}

ESCUutar

Escutar uma notificação.

ESCUutar nome

LOAD

Carregar ou recarregar um arquivo de biblioteca compartilhada.

CARREGAR 'nome_arquivo'

BLOQUEAR

Bloquear uma tabela.

BLOQUEAR [ TABELA ] nome [, ...] [ EM modo_lock MODO ] [ ESPERAR ]

modo_lock Pode ser uma das seguintes opções:

ACESSO COMPARTILHAR | LINHA COMPARTILHAR | LINHA EXCLUSIVA | COMPARTILHAR ATUALIZAÇÃO EXCLUSIVA
| COMPARTILHAR | COMPARTILHAR LINHA EXCLUSIVA | EXCLUSIVA | ACESSO EXCLUSIVO

MOVER

Localizar um cursor.

MOVER [ direção { DE | EM } ] nome_cursor

NOTIFICAR

Gerar uma notificação.

NOTIFICAR nome

PREPARAR

Criar uma consulta pronta.

PREPARAR nome_plan [ ( tipo_dado [, ...] ) ] COM statement

REINDEXAR

Reconstruir índices.

REINDEXAR { BANCO DE DADOS | TABELA | ÍNDICE } nome [ FORÇAR ]

LIBERAR PONTO DE SALVA

Remover um ponto de salvamento definido anteriormente.

LIBERAR [ PONTO DE SALVA ] nome_ponto_salva

RESETAR

Restaurar um valor de parâmetro de tempo de execução para o valor padrão.

RESETAR nome
RESETAR TODOS

REVOQUE

Remover permissões de acesso.

REVOQUE [ CONCESSÃO ]
{ { SELECIONAR | INSERIR | ATUALIZAR | DELETAR | REGRAS | REFERÊNCIAS | TRIGGER } }
[,...] | TODOS [ PRIVILEGIOS ] }
ON [ TABELA ] table_name [, ...]
FROM { nome_do_usuário | GRUPO nome_do_grupo | PÚBLICO }[, ...]
[ CASCATA | RESTRITIR ]
REVOQUE [ CONCESSÃO ]
{ { CRIAR | TEMPORÁRIA | TEMP } [,...] | TODOS [ PRIVILEGIOS ] }
ON BANCO DE DADOS db_name [, ...]
FROM { nome_do_usuário | GRUPO nome_do_grupo | PÚBLICO }[, ...]
[ CASCATA | RESTRITIR ]
REVOQUE [ CONCESSÃO ]
{ CRIAR | TODOS [ PRIVILEGIOS ] }
ON ESPAÇO DE ARQUIVO tablespace_name [, ...]
FROM { nome_do_usuário | GRUPO nome_do_grupo | PÚBLICO }[, ...]
[ CASCATA | RESTRITIR ]
REVOQUE [ CONCESSÃO ]
{ EXECUTAR | TODOS [ PRIVILEGIOS ] }
ON FUNÇÃO func_name ( [type, ...] ) [, ...]
FROM { nome_do_usuário | GRUPO nome_do_grupo | PÚBLICO }[, ...]
[ CASCATA | RESTRITIR ]
REVOQUE [ CONCESSÃO ]
{ USO | TODOS [ PRIVILÉGIOS ] }
ON LINGUAGEM nome_da_linguagem[, ...]
FROM { nome_do_usuário | GRUPO nome_do_grupo | PÚBLICO }[, ...]
[ CASCATA | RESTRITIR ]
REVOQUE [ CONCESSÃO ]
{ { CRIAR | USO } [,...] | TODOS [ PRIVILÉGIOS ] }
ON ESQUEMA nome_do_esquema[, ...]
FROM { nome_do_usuário | GRUPO nome_do_grupo | PÚBLICO }[, ...]
[ CASCATA | RESTRITIR ]

ROLLBACK

Sair da transação atual.

ROLLBACK [ TRABALHO | TRANSACÇÃO ]

ROLLBACK TO PONTO_DE_SALVAMENTO

Rolar de volta até um ponto de salvamento.

ROLLBACK [ TRABALHO | TRANSACÇÃO ] TO [ PONTO_DE_SALVAMENTO ] nome_do_ponto_de_salvamento

PONTO_DE_SALVAMENTO

Definir um novo ponto de salvamento no transação atual.

PONTO_DE_SALVAMENTO nome_do_ponto_de_salvamento

SELECT

Retirar várias linhas de uma tabela ou visão.

SELECT [ TODOS | DIFERENTES [ ON ( expressão [ , [...] ] ) ] ]
* | expressão [COMO nome_de_saida][, ...]
[DE origem_item[, ...]]
[ WHERE condition ]
[GRUPO POR expressão[, ...]]
[COM SEGUIMENTO condição[, ...]]
[{UNION | INTERSECT | EXCEPT} [TODOS] select]
[ORDENAR POR expressão [ASC | DESC | USANDO operador][, ...]]
[LIMIT {contar | TODOS}]
[OFFSET início]
[PARA ATUALIZAÇÃO [DE nome_da_tabela[, ...]]]

item_de_partida Pode ser uma das seguintes opções:

[ SOMENTE ] nome_da_tabela [ * ] [ [ COM ] alias [ ( alias_da_coluna [ ] ) ] ]
( seleção ) [ COM ] alias [ ( alias_da_coluna [ ] ) ]
nome_da_função ( [ argumento [ , [...] ] ] )
[ COM ] alias [ ( alias_da_coluna [ , [...] ] | definição_da_coluna [ , [...] ] ) ]
nome_da_função ( [ argumento [ , [...] ] ] ) AS ( definição_da_coluna [ , [...] ] )
item_de_partida [ NATURAL ] tipo_de_junta item_de_partida
[ ON condição_de_junta | USANDO ( coluna_de_junta [ , [...] ] ) ]

SELECT INTO

Definir uma nova tabela a partir do resultado de uma consulta.

SELECT [ TODOS | DIFERENTES [ ON ( expressão [ , [...] ] ) ] ]
* | expressão [COMO nome_de_saida][, ...]
INTO [TEMPORÁRIA | TEMP] [TABELA] nova_tabela
[DE origem_item[, ...]]
[ WHERE condition ]
[GRUPO POR expressão[, ...]]
[COM SEGUIMENTO condição[, ...]]
[{UNION | INTERSECT | EXCEPT} [TODOS] select]
[ORDENAR POR expressão [ASC | DESC | USANDO operador][, ...]]
[LIMIT {contar | TODOS}]
[OFFSET início]
[PARA ATUALIZAÇÃO [DE nome_da_tabela[, ...]]]

DEFINIR

Modificar parâmetros de tempo de execução.

DEFINIR [SESSÃO | LOCAL] nome {PARA | =} {valor | 'valor' | PADRÃO}
DEFINIR [SESSÃO | LOCAL] FUSO HORÁRIO {fuso_horário | LOCAL | PADRÃO}

DEFINIR CONSTRANÇAS

Definir o modo de verificação de restrições da transação atual.

DEFINIR CONSTRANÇAS {TODAS | nome[, ...]} {DEFERIDO | IMEDIATO}

DEFINIR AUTORIZAÇÃO DE SESSÃO

Definir o identificador de usuário da sessão atual e o identificador de usuário atual.

DEFINIR [SESSÃO | LOCAL] AUTORIZAÇÃO DE SESSÃO username
DEFINIR [SESSÃO | LOCAL] AUTORIZAÇÃO DE SESSÃO PADRÃO
REDEFINIR AUTORIZAÇÃO DE SESSÃO

DEFINIR TRANSAÇÃO

Iniciar um bloco de transação.

DEFINIR TRANSAÇÃO transaction_mode[, ...]
DEFINIR CARACTERÍSTICAS DE SESSÃO COMO MODO DE TRANSAÇÃO transaction_mode[, ...]

Onde modo_transação é uma das seguintes −

NÍVEL DE ISOLOWATION { SERIALIZÁVEL | REPEATABLE READ | LEITURA CONFIÁVEL
| LEITURA NÃO CONFIÁVEL }
LEITURA E ESCRITA | LEITURA SOMENTE

SHOW

Exibir o valor do parâmetro de tempo de execução.

SHOW name
SHOW ALL

START TRANSACTION

Iniciar um bloco de transação.

START TRANSACTION [ modo_transação [, ...] ]

modo_transação Pode ser uma das seguintes opções:

NÍVEL DE ISOLOWATION { SERIALIZÁVEL | REPEATABLE READ | LEITURA CONFIÁVEL
| LEITURA NÃO CONFIÁVEL }
LEITURA E ESCRITA | LEITURA SOMENTE

TRUNCATE

Esvaziar uma ou várias tabelas.

TRUNCATE [ TABLE ] name

UNLISTEN

Parar de ouvir mensagens de notificação.

UNLISTEN { name | * {}

UPDATE

Atualizar uma linha em uma tabela.

UPDATE [ ONLY ] table SET column = { expression | DEFAULT } [, ...]
[ FROM from_list ]
[ WHERE condition ]

VACUUM

Coleta de lixo e, opcionalmente, análise de um banco de dados.

VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ table ]
VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] ANALYZE [ table [ (column [, ...] ) ] ]

VALUES

Calcular uma ou várias linhas.

VALUES ( _expression_ [, ...] ) [, ...]
    [ ORDER BY _sort_expression_ [ ASC | DESC | USING _operator_ ] [, ...] ]
    [ LIMIT { _count_ | ALL } ]
    [ OFFSET _start_ [ ROW | ROWS ] ]
    [ FETCH { FIRST | NEXT } [ _count_ ] { ROW | ROWS } ONLY ]