Guia de Consulta Rápida Oracle 10g SQL Rubens Thiago de Oliveira Novatec Editora 2 Copyright 2004 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo, sem prévia autorização, por escrito, do autor e da Editora. Editor: RUBENS PRATES ISBN: 85-7522-054-3 Primeira edição: Julho/2004 Primeira reimpressão: Novembro/2006 NOVATEC EDITORA LTDA. Rua Luís Antônio dos Santos 110 02460-000 São Paulo SP – Brasil Tel.: +55 11 6959-6529 Fax: +55 11 6950-8869 E-mail: [email protected] Site: www.novatec.com.br Sumário 3 Informações gerais ............................................................ 4 Sobre o autor ............................................................... 4 Notação sintática utilizada neste guia .......................... 4 Comentários e sugestões ............................................ 4 Comandos SQL ................................................................. 5 Cláusulas ......................................................................... 92 Operadores ...................................................................... 99 Operadores aritiméticos ............................................. 99 Operadores de concatenação .................................... 99 Operadores de comparação ...................................... 99 Operadores lógicos .................................................... 99 Operadores de conjunto ........................................... 100 Operadores de multi conjunto .................................. 100 Outros operadores SQL ........................................... 100 Pseudo Colunas ....................................................... 100 Formatos ........................................................................ 102 Formatos numéricos ................................................ 102 Formatos de datas e horas ...................................... 102 Tipos de dados (Datatypes) ........................................... 104 Funções ......................................................................... 106 Funções numéricas .................................................. 106 Funções de caracteres ............................................. 108 Funções de valores numéricos ................................. 111 Funções de datas ..................................................... 112 Funções de conversão ............................................. 115 Funções de coleção ................................................. 119 Outras funções ......................................................... 120 Funções de agrupamento ........................................ 124 Funções analíticas ................................................... 130 Funções de objeto referência ................................... 135 Funções de modelo .................................................. 136 Índice remissivo ............................................................. 137 4 Informações gerais Informações gerais Sobre o autor Rubens Thiago de Oliveira, natural de Santos – SP, é Bacharel em Ciências da Computação pela Universidade Santa Cecília (UNISANTA) em 1990, MBA em Gestão Empresarial pela Fundação Getúlio Vargas (FGV) em 2002. Trabalha há quatorze anos na área de TI e exerce a função de DBA Oracle há dez anos. Participou de projetos em várias empresas reconhecidas no mercado atuando em instalações, migrações, configurações, modelagem de dados, tuning de aplicações e banco de dados. Autor dos guias de consulta rápida Oracle 8 SQL (2000) e Oracle 9i SQL (2002), também escreve matérias para o website de profissionais Oracle. Para entrar em contato com o autor envie um e-mail para [email protected] ou visite sua home page em http://www.olivert.cjb.net. Notação sintática utilizada neste guia itens em itálico Identificam as informações que devem ser fornecidas pelo DBA ou desenvolvedor. [] Na sintaxe dos comandos, os itens dentro de colchetes indicam mais opções do comando. ••• Identifica as partes de um comando que podem ser repetidas. {opção1|opção2|..} Indica que deve ser escolhida uma opção entre duas ou mais alternativas. Comentários e sugestões Comentários e sugestões sobre este guia serão bastante apreciados. Podem ser enviados para o e-mail: [email protected] Conheça o site da Novatec Editora em: www.novateceditora.com.br 5 Comandos SQL Comandos SQL ALTER CLUSTER Altera as características de armazenamento e paralelismo de um cluster. ALTER CLUSTER [esquema.]cluster |[PCTFREE inteiro]|[PCTUSED inteiro] |[INITRANS inteiro]|[MAXTRANS inteiro] |{STORAGE (INITIAL inteiro [K | M | G | T] | NEXT inteiro [K | M ] | MINEXTENTS inteiro | MAXEXTENTS [inteiro | UNLIMITED] | PCTINCREASE inteiro | FREELISTS inteiro | FREELISTS GROUPS inteiro | OPTIMAL [ inteiro [K | M]| NULL]] | BUFFER_POOL [ KEEP | RECYCLE | DEFAULT]]} |[SIZE inteiro [K | M | G | T] |[ALLOCATE EXTENT [([SIZE inteiro [K | M | G | T] |[DATAFILE ‘nome_datafile‘]| [INSTANCE inteiro])] |[DEALLOCATE UNUSED [KEEP inteiro {K | M | G | T}] |[CACHE | NOCACHE] |[PARALLEL inteiro | NOPARALLEL]; Parâmetro Significado SIZE Número de chaves que serão armazenadas no cluster. Especifica a reserva de uma nova extensão. Tamanho (em bytes) de uma extensão do cluster. Datafile onde será reservada a nova extensão. Cria uma nova extensão disponibilizando um grupo de listas livres (freelists). Libera uma extensão reservada anteriormente. Quantidade (em bytes) a ser liberada. Quantidade de blocos que ficarão na área de buffer cache do banco de dados. Quantidade de blocos que não ficarão na área de buffer cache do banco de dados. Define o grau de paralelismo do cluster. Define que o cluster não terá execução em paralelo. ALLOCATE EXTENT SIZE DATAFILE INSTANCE DEALLOCATE UNUSED KEEP CACHE NOCACHE PARALLEL NOPARALLEL ALTER DATABASE Altera as principais características de um banco de dados, permite também a conversão e a realização de backups. ALTER DATABASE [banco] |[MOUNT [STANDBY | CLONE ] DATABASE] |[OPEN [READ WRITE] |[RESETLOGS | NORESETLOGS]|[UPGRADE|DOWNGRADE] |[READ ONLY] | [cláusula_recover] |[RENAME FILE ‘nome_anterior ‘ TO ‘nome_novo‘] |[CREATE DATAFILE [‘arquivo’ | número_arquivo] AS [‘arquivo’ | NEW]] |[DATAFILE [‘arquivo’ | número_arquivo] [ONLINE | OFFLINE |[FOR DROP]] |[RESIZE [inteiro [K | M | G | T]] |[AUTOEXTEND [OFF | ON [NEXT inteiro [K | M | G | T] |[MAXSIZE [UNLIMITED | inteiro [K | M | G | T]]] |[END BACKUP] 6 Comandos SQL |[TEMPFILE [‘arquivo’ | número_arquivo]|[RESIZE [inteiro [K | M |G | T]] |[AUTOEXTEND [OFF | ON [NEXT inteiro [K | M | G | T] |[MAXSIZE [UNLIMITED | inteiro [K | M | G | T]]] |[DROP INCLUDING DATAFILES]|[ONLINE | OFFLINE] |[ARCHIVELOG [MANUAL]| NOARCHIVELOG] |[[NO] FORCE LOGGING] |[RENAME FILE ‘nome_anterior ‘ TO ‘nome_novo‘] |[CLEAR [UNARCHIVED] LOGFILE {GROUP inteiro (arquivo [,arquivo]...) arquivo} [UNRECOVERABLE DATAFILE]] |[ADD [STANDBY] LOGFILE [INSTANCE ´nome_instância'] |THREAD integer]|[GROUP inteiro] arquivo [,arquivo]...] |[MEMBER ‘arquivo’ [REUSE],... TO {GROUP inteiro (arquivo[,arquivo]...)arquivo }] |[DROP [STANDBY] LOGFILE] {GROUP inteiro (arquivo [,arquivo]...) arquivo }...] |[ADD [STANDY] LOGFILE MEMBER ‘arquivo’ |[REUSE] TO {GROUP inteiro (arquivo[,arquivo]...)arquivo }] |[[ADD|DROP] SUPPLEMENTAL LOG DATA ([ALL | PRIMARY KEY | UNIQUE | FOREIGN KEY]) COLUMNS] |[CREATE [LOGICAL | PHYSICAL] STANDBY CONTROLFILE AS ‘arquivo ‘ REUSE] |[BACKUP CONTROLFILE TO ‘arquivo’ [REUSE] |[TRACE AS 'nome_arquivo' [REUSE] |[RESETLOGS |NORESETLOGS]] |[ACTIVATE [PHYSICAL | LOGICAL] STANDBY DATABASE] |[SKIP STANDBY LOGFILE] |[SET STANDBY DATABASE TO MAXIMIZE [PROTECTION | AVAILABILITY | PERFORMANCE]] |[REGISTER [OR REPLACE] [PHYSICAL|LOGICAL] [LOGFILE ,‘arquivo’... FOR nome_sessão_logminer] |[[PREPARE | COMMIT] TO SWITCHOVER TO [PHYSICAL | LOGICAL] PRIMARY] [PRIMARY | STANDBY]|[WTIH|WITHOUT] SESSION SHUTDOWN [WAIT |NOWAIT]] |[LOGICAL STANDBY] |[CANCEL] |[START LOGICAL STANDBY APPLY [IMMEDIATE][NODELAY]] |[NEW PRIMARY dblink | INITIAL valor_scn | SKIP FAILED TRANSACTION | FINISH]] |[[STOP | ABORT] LOGICAL STANDBY APPLY] |[NOPARALLEL |PARALLEL inteiro] |[SET DEFAULT [BIGFILE | SMALLFILE] TABLESPACE] |[DEFAULT TABLESPACE tablespace] |[DEFAULT TEMPORARY TABLESPACE [tablespace | nome_grupo_tablespace] |[RENAME GLOBAL_NAME TO banco[.domínio]] |[ENABLE BLOCK CHANGE TRACKING [USING FILE 'nome_arquivo' REUSE] |[DISABLE BLOCK CHANGE TRACKING]] |[FLASHBACK [ON|OFF]] |[SET TIME_ZONE = '+/- hh:mi ' | região_zona_tempo] |[[ENABLE|DISABLE][INSTANCE ´instância´ [PUBLIC] THREAD [inteiro]] |[GUARD [ALL | STANDBY | NONE]]; cláusula_recover :: = RECOVER |[AUTOMATIC] [FROM ‘localização‘]|[STANDBY] [DATABASE] |[UNTIL [CANCEL | TIME data | CHANGE inteiro] |[USING BACKUP CONTROLFILE] |[TABLESPACE tablespace] |[DATAFILE ‘ datafile ‘ | número_arquivo] 7 Comandos SQL |[STANDBY][TABLESPACE tablespace |DATAFILE ‘datafile ‘ |número_arquivo] |[UNTIL [CONSISTENT WITH] CONTROLFILE] |[LOGFILE ‘arquivo_log’ ] |[TEST | ALLOW inteiro CORRUPTION |[NOPARALLEL |PARALLEL inteiro] |[CONTINUE [DEFAULT]] |[CANCEL] |[RECOVER MANAGED STANDBY DATABASE] |[DISCONNECT [FROM SESSION] |[TIMEOUT inteiro | NOTIMEOUT] |[NODELAY | DEFAULT DELAY | DELAY inteiro] |[NEXT inteiro] |[EXPIRE inteiro | NO EXPIRE] |[NOPARALLEL |PARALLEL inteiro] |[USING CURRENT LOGFILE]|[UNTIL CHANGE inteiro] |[THROUGH [THREAD inteiro] SEQUENCE inteiro |[ALL ARCHIVELOG]|[[ALL | LAST | NEXT] SWITCHOVER] |[CANCEL [IMMEDIATE|[ WAIT|NOWAIT]] |[DISCONNECT [FROM SESSION] |[NOPARALLEL |PARALLEL inteiro] |[FINISH SKIP [STANDBY LOGFILE]|[WAIT|NOWAIT]]] |[BEGIN | END] BACKUP] Parâmetro MOUNT STANDBY CLONE DATABASE OPEN Significado Monta um banco de dados. Monta um banco de dados em standby. Monta um banco de dados clonado. Abre um banco de dados, tornando-o disponível para uso. Deve-se montá-lo antes de abrí-lo. Não é possível abrir um banco de dados que esteja em “standby”. READ WRITE Abre o banco de dados no modo de leitura e gravação (opção default). RESETLOGS Elimina a seqüência dos logs correntes e descarta qualquer informação do redo log. Quando esta cláusula é utilizada, a recuperação do banco de dados deverá ser realizada por meio da cláusula RECOVER. NORESETLOGS Mantém a seqüência do log corrente, permitindo o recover do banco de dados (opção default). UPGRADE | DOWNGRADE Abre um banco de dados permitindo realizar somente um upgrade ou downgrade. READ ONLY Abre o banco de dados permitindo somente a leitura. cláusula_recover Permite realizar operações de backup com o banco de dados. AUTOMATIC Geraarestauraçãoautomáticadosarquivos de redo logs no banco de dados. FROM 'localização' Localização onde serão lidos os arquivos de logs. STANDBY DATABASE Recuperação do banco de dados inteiro em modo standby. DATABASE Recuperação do banco de dados inteiro. UNTIL CANCEL Indica que a recuperação do banco de dados ocorrerá até seu cancelamento automático. 8 Comandos SQL UNTIL TIME Indica que a recuperação do banco de dados ocorrerá até uma data especificada no formato 'YYYY-MM-DD:HH24:MI:SS'. UNTIL CHANGE Indica que a recuperação do banco de dados ocorrerá até a alteração do número do SCN (System Change Number). USING CURRENT LOGFILE Recupera o arquivo de log em tempo real. USING BACKUP CONTROLFILE Recupera o banco de dados utilizando o arquivo de control file. TABLESPACE Recupera o conteúdo de uma tablespace. DATAFILE Recupera o conteúdo de um datafile. STANDBY TABLESPACE Reconstrói uma tablespace de um banco de dados em modo standby. STANDBY DATAFILE Reconstrói um datafile de um banco de dados em modo standby. UNTIL [CONSISTENT WITH] CONTROLFILE Reconstrói uma tablespace ou um datafile de um banco de dados em modo standby utilizando o arquivo de control file. LOGFILE Permite continuar aplicando o conteúdo do arquivo de redo log. TEST Testa o modo de recuperação. ALLOW ... CORRUPTION Número de blocos corrompidos tolerados durante o processo de recuperação. NOPARALLEL Indica que a execução do banco será serial (opção default). PARALLEL Grau de paralelismo do banco de dados. CONTINUE Permite continuar o processo de recuperação, caso ele seja interrompido. A opção DEFAULT permite continuar a recuperação utilizando o mesmo arquivo de redo log. CANCEL Cancela o processo de recuperação. RECOVER MANAGED STANDBY DATABASE Recuperação automática de um banco de dados em modo standby. NODELAY| DEFAULT DELAY | DELAY inteiro Permite aplicar um arquivo de redo log atrasado especificando um intervalo (em minutos) de tempo em um banco de dados. A cláusula NODELAY aplica o arquivo de redo log imediatamente. NEXT inteiro Indica o número do próximo arquivo de redo log deverá ser aplicado. EXPIRE inteiro Determina o tempo em minutos que a operação de recovery deverá terminar automaticamente. TIMEOUT Tempo (em minutos) de espera de uma operação de recuperação. THROUGH Instruiobancodedadosparaterminarorecorver. Pode ser utilizado como THROUGH ..SEQUENCE, THROUGH ALL ARCHIVELOG,THROUGH..SWITCHOVER. CANCEL Cancela uma operação de recuperação de um banco de dados em modo standby. IMMEDIATE Cancela imediatamente a operação de recuperação de um banco de dados. Comandos SQL NOWAIT DISCONNECT FROM SESSION FINISH NOWAIT BEGIN BACKUP END BACKUP CREATE DATAFILE AS NEW AS DATAFILE ONLINE OFFLINE FOR DROP RESIZE END BACKUP TEMPFILE DROP INCLUDING DATAFILES AUTOEXTENT ON AUTOEXTENT OFF NEXT MAXSIZE UNLIMITED ARCHIVELOG MANUAL NOARCHIVELOG [NO] FORCE LOGGING 9 Cancela imediatamente a operação de recuperação de um banco de dados desprezando a resposta do processo de recover. Indica que o processo de recuperação do banco de dados em modo standby será desconectado. Desconecta a sessão que está fazendo a recuperação do banco de dados. Recupera o log file atual do banco de dados em standby. Retorna imediatamente o controle do banco de dados após concluído o processo de recuperação. Indica o início da operação de backup de banco de dados. Indica o término da operação de backup de banco de dados. Cria um novo datafile vazio no lugar do datafile antigo. Cláusula utilizada para recriar datafiles. Cria um datafile com um nome gerado automaticamente pelo sistema operacional. Permite que o nome do datafile seja definido pelo usuário. Altera os parâmetros de um datafile. Coloca o datafile on-line. Coloca o datafile off-line. Elimina o datafile especificado. Altera o tamanho de um datafile. Termina um backup caso o banco de dados tenha sido interrompido por uma falha de sistema. Cria ou recria um arquivo temporário. Elimina um arquivo temporário do banco de dados. Remove o arquivo temporário incluindo o datafile. Habilita o modo de extensão automática. Desabilita o modo de extensão automática. Tamanho (em bytes) da próxima extensão. Tamanho máximo em disco permitido para as extensões automáticas de um datafile. Permite que uma extensão automática não possua limites de espaço em disco de um datafile ou tempfile. Habilita o modo de arquivamento ativo. O Oracle armazena as informações dos “redo logs” em arquivos separados em disco, possibilitando voltar o posicionamento do banco de dados a qualquer momento. Permite que o arquivamento dos redo logs seja controlado pelo usuário. Desabilita o modo de arquivamento subescrevendo os arquivos de redo logs, impossibilitando a volta das transações do banco de dados. Coloca o banco de dados em modo de Force Logging. 10 Comandos SQL RENAME FILE Renomeia datafiles, tempfiles e membros de redo logs. CLEAR LOGFILE Inicializa um arquivo de redo log. ADD [STANDBY] LOGFILE Adiciona um ou mais grupos de redo logs. INSTANCE Indica o nome da instância onde será adicionado o arquivo de log. Usado para RAC (Real Application Cluster). THREAD Ativa a thread dos redo logs (Oracle Real Application Cluster). GROUP Grupos de arquivos de redo logs. Se este parâmetro for omitido, o Oracle gerará o grupo automaticamente. arquivos Especifica o(s) grupo(s) de um ou mais membro(s) de redo log files. DROP LOGFILE Remove os membros de um grupo de redo log. DROP LOGFILE MEMBER Remove um ou mais membros de um redo log. ADD SUPPLEMENTAL LOG DATA Permite colocar dados adicionais no log do banco de dados. Essa informação pode ser utilizada pelo utilitário LogMiner. ADD [STANDBY] LOGFILE MEMBER Adiciona novos membros aos grupos de redo logs. PRIMARY KEY COLUMNS Permite colocar dados adicionais no log do banco de dados, referente a colunas com chaves primárias. UNIQUE INDEX COLUMNS Permite colocar dados adicionais no log do banco de dados, referente a colunas com índices únicos. DROP SUPPLEMENTAL LOG DATA Impede o banco de dados de armazenar informações adicionais no log. UNARCHIVED Reinicia um arquivo de redo log não permitindo o arquivamento automático. UNRECOVERABLE DATAFILE Permite recuperar um banco de dados com um datafile irrecuperável. CREATE STANDBY CONTROLFILE Cria um arquivo de control file para ser utilizado por um banco de dados em modo standby. BACKUP CONTROLFILE Efetua o backup do arquivo de control file. TO ‘arquivo’ Cria um novo nome para o arquivo do control file que será copiado. TO TRACE Cria um arquivo texto no diretório de “dump” do banco de dados (parâmetro definido no arquivo init.ora). RESETLOGS Especifica que o arquivo usará a cláusula ALTER DATABASE OPEN RESETLOGS. NORESETLOGS Especifica que o arquivo usará a cláusula ALTER DATABASE OPEN NORESETLOGS. ACTIVATE STANDBY DATABASE Altera o estado de um banco de dados standby para banco de dados ativo. LOGICAL Ativa o banco de dados lógico em standby. Comandos SQL PHYSICAL 11 Ativa o banco de dados físico em standby. Valor default. SET STANDBY DATABASE Habilita o banco de dados para o modo standby. MAXIMIZE PROTECTION Habilita a máxima proteção de um banco de dados em standby. AVAILABILITY Habilita a máxima proteção e a alta disponibilidade de um banco de dados em standby. PERFORMANCE Habilitaamáximaperformancedeumbanco de dados em standby. REGISTER LOGFILE Registra o arquivo de log file com erro, válido somente para bancos em standby. OR REPLACE Permite reescrever um arquivo de log file que apresentou erro, para bancos em standby. FOR nome_sessão_logminer Recupera o registro de um arquivo de log conforme o nome da sessão especificada no logminer. PREPARE TO SWITCHOVER Prepara um banco em standby para realizar uma operação de switchover. COMMIT TO SWITCHOVER Realiza a gravação de uma operação de switchover. CANCEL Cancela uma operação de switchover. START LOGICAL STANDBY APPLY Cláusula que aplica os arquivos de redo logs para um banco lógico em standby. IMMEDIATE Permite que o logminer leia um arquivo de redolog em um banco de dados em standby. NO DELAY Ignora o tempo de espera para aplicar um arquivo de redolog. INITIAL Lê os primeiros arquivos de redolog para um banco em standby. SKIP FAILED [TRANSACTION] Caso a última transação tenha falhado ele não aplica-a no banco de dados. FINISH Força o arquivo de redolog de um banco em standby arquivar as informações. SET TIME_ZONE região_zona_tempo Indica a região da zona de tempo. SET DEFAULT TABLESPACE Especifica ou altera a tablespace default do banco de dados. BIGFILE Para arquivos com mais de 4 gigabytes de blocos. SMALLFILE Para arquivos com mais de 4 megabytes de blocos. DEFAULT TEMPORARY TABLESPACE Especificaoualteraatablespacetemporária do banco de dados. ENABLE | DISABLE INSTANCE Cláusula que permite habilitar ou desabilitar uma instância. ENABLE | DISABLE THREAD Habilita/desabilita uma thread dos arquivos deredologsemumservidorparalelo(Oracle Real Application Cluster). PUBLIC Habilita o THREAD para qualquer instância (Oracle Real Application Cluster). 12 Comandos SQL RESET COMPATIBILITY Identifica o banco de dados como sendo de uma versão mais antiga. Recurso utilizado para migrações. CONVERT Converte um banco de dados na versão 7 para a versão 10g. RENAME GLOBAL_NAME Altera o nome global do banco de dados. ENABLE | DISABLE BLOCKING CHANGE TRACKING Habilita/desabilita a localização física de todas as alterações no banco de dados. FLASHBACK ON Coloca o banco em modo de flashback, permitindo recuperar as informações mesmo depois de removidas do banco, sem a necessidade de recuperar o backup. FLASHBACK OFF Retira o banco do modo de flashback. GUARD ALL Evita que todos os usuários que não sejam SYS realizem qualquer alteração no banco de dados. GUARD STANDBY Evita que todos os usuários que não sejam SYS realizem qualquer alteração em um banco de dados em modo standby. GUARD NONE Permite que todos os usuários possam realizar alterações no banco de dados, respeitando os privilégios de sistema e de roles. ALTER DIMENSION Altera os atributos de uma dimensão e os relacionamentos hierárquicos entre elas. ALTER DIMENSION [esquema.]dimensão |[ADD]| [LEVEL nível IS nível_tabela.nível_coluna |(nível_tabela.nível_coluna,...)] |[HIERARCHY hierarquia (nível_filho CHILD OF nível_pai [JOIN KEY coluna_chave_filho |(colunas_chaves_filho,...) REFERENCES nível_pai)]] |[ATTRIBUTE nível DETERMINES coluna_dependente |(colunas_dependentes,...) |[DROP[LEVEL nível [RESTRICT|CASCADE] |[HIERARCHY hierarquia] |[ATTRIBUTE atributo LEVEL nível [COLUMN coluna,]]|[COMPILE]; Parâmetro Significado ADD Adiciona níveis, hierarquias ou atributos numa dimensão. Remove níveis, hierarquias ou atributos numa dimensão. Remove atributos ou hierarquias em objetos que estejam referenciados. Impede a remoção de atributos ou hierarquias em objetos que estejam referenciados (opção default). Recompila uma dimensão. DROP CASCADE RESTRICT COMPILE ALTER DISKGROUP Altera parâmetros de um grupo de discos no banco de dados. ALTER DISKGROUP nome_grupo_discos |[ADD [FAILGROUP nome_grupo_falha] DISK 'pto_montagem',... NAME ´nome_disco´ SIZE inteiro [K | M | G | T] |[FORCE | NOFORCE]] |[DROP [DISK nome_disco][FORCE | NOFORCE],... |[DISK IN FAILGROUP nome_grupo_falha |[FORCE | NOFORCE],...]] |[RESIZE [ALL SIZE inteiro [K | M | G | T] 13 Comandos SQL |[DISK nome_disco SIZE inteiro [K | M | G | T],...] |[DISKS IN FAILGROUP nome_grupo_falha SIZE inteiro [K | M | G | T],...]] |[[nome_grupo_discos | ALL] UNDROP DISKS] |[REBALANCE [POWER inteiro]] |[CHECK |[ALL]|[DISK nome_disco] |[DISKS IN FAILGROUP nome_grupo_falha] |[FILE nome_arquivo]|[REPAIR | NOREPAIR] |[[ADD | ALTER] TEMPLATE nome_template ATTRIBUTE([MIRROR|UNPROTECTED]|[FINE|COARSE]) |[DROP TEMPLATE nome_template]] |[ADD DIRECTORY 'nome_arquivo',...] |[DROP DIRECTORY 'nome_arquivo',...|[FORCE | NOFORCE]] |[RENAME DIRECTORY 'diretório_antigo' TO 'diretório_novo'] |[ADD ALIAS 'apelido' FOR 'apelido',...] |[DROP ALIAS 'apelido'] |[RENAME ALIAS 'apelido_antigo' TO 'apelido_novo',...] |[DROP FILE 'nome_arquivo']|[ [nome_grupo_discos | ALL] [MOUNT | DISMOUNT [FORCE | NOFORCE]]]; Parâmetro nome_grupo_discos pto_montagem ADD FAILGROUP Significado Nome do grupo de discos a ser alterado. Nome do ponto de montagem de uma file system. Adiciona um ou mais discos num grupo. Cria um grupo para armazenarem as falhas de um grupo. SIZE Indica o tamanho do disco que será adicionado ao grupo em bytes, kilobytes, megabytes, gigabytes ou terabytes. DROP DISK Remove um ou mais discos num grupo. DROP DISKS IN FAILGROUP Remove todos os discos contidos num grupo de falhas. FORCE|NOFORCE Força ou não a remoção de um ou mais discos em um grupo. RESIZE ALL Realiza o ajuste de tamanho de todos os discos num grupo. RESIZE DISK Realizaoajustedetamanhodeumdiscoespecifico. RESIZE DISKS IN FAILGROUP Realiza o ajuste de tamanho de todos os discos num grupo de falhas. REBALANCE Realiza um ajuste de cargas para um disco de grupo. CHECK Verifica a consitência interna de um disco. ALL Verifica todos os disco num grupo. DISK Verifica um ou mais discos especificados num grupo. DISK IN FAILGROUP Verifica todos os discos num grupo de falhas. FILE Verifica um ou mais arquivos num grupo de discos. REPAIR | NOREPAIR Pernite ou não tentar reparar erros durante a verificação dos discos. ADD TEMPLATE Adiciona um ou mais arquivos de template num grupo de discos. ALTER TEMPLATE Altera um ou mais arquivos de template num grupo de discos. nome_template Nome de um arquivo de template. ATTRIBUTE MIRROR Os arquivos onde serão aplicados e protegidos num espelhamento dos blocos de dados. ATTRIBUTE UNPROTECTED Os arquivos não serão aplicados e protegidos num espelhamento dos blocos de dados. 14 Comandos SQL FINE Arquivos de templates que serão aplicados e divididos sempre em blocos de 128 kb. COARSE Arquivos de templates que serão aplicados e divididos sempre em blocos de 1 Mb. DROP TEMPLATE Remove um arquivo de template. ADD | DROP | RENAME DIRECTORY Cria, remove ou altera o nome de um diretório na hierarquia. ADD | DROP | RENAME ALIAS Cria, remove ou altera um apelido para o gerenciamento automático de armazenamento (ASM). MOUNT Monta um grupo de discos. DISMOUNT Desmonta um grupo de discos. ALTER FUNCTION Recompila uma função no banco de dados. ALTER FUNCTION [esquema.]função |[COMPILE [DEBUG]] |[nome_parâmetro = valor_parâmetro]|[REUSE SETTINGS]; Parâmetro Significado COMPILE DEBUG Recompila uma função. Recompila a função junto com o depurador de códigos "debug". Nome do parâmetro a ser compilado junto com o código PL/SQL. Para essa cláusula poderão ser especificados os parâmetros PLSQL_OPTIMIZE_LEVEL, PLSQL_CODE_TYPE, PLSQL_DEBUG, PLSQL_WARNINGS e NLS_LENGTH_SEMANTICS. Indica os valores para os parâmetros descritos. Preserva os valores inicializados da função durante uma recompilação. nome_parâmetro valor_parâmetro REUSE SETTINGS ALTER INDEX Redefine características de armazenamento de um índice. ALTER INDEX [esquema.]índice |[DEALLOCATE UNUSED [KEEP inteiro [K | M | G | T]]] |[ALLOCATE EXTENT (SIZE inteiro [K | M | G | T] |DATAFILE ‘arquivo’ | INSTANCE inteiro)] |[SHRINK SPACE [COMPACT CASCADE]] |[cláusula_paralelismo]| [cláusula_atributos_físicos] |[LOGGING | NOLOGGING] |[REBUILD] |[PARTITION partição]|[SUBPARTITION subpartição] |[REVERSE | NOREVERSE]|[cláusula_paralelismo] |[TABLESPACE tablespace] |[PARAMETERS ('parâmetros_recriação_partição')] |[ONLINE]|[COMPUTE STATISTICS] |[cláusula_atributos_físicos] |[COMPRESS inteiro | NOCOMPRESS] |[LOGGING | NOLOGGING] |[PARAMETERS ('parâmetros_recriação_índice')] |[ENABLE | DISABLE] |[UNUSABLE] |[RENAME TO nome_novo] |[COALESCE] |[[MONITORING | NOMONITORING] USAGE] |[UPDATE BLOCK REFERENCES] |[MODIFY DEFAULT ATTRIBUTES [FOR PARTITION partição]] 15 Comandos SQL |[cláusula_atributos_físicos] |[TABLESPACE tablespace | DEFAULT] |[LOGGING | NOLOGGING] |[ADD PARTITION partição [TABLESPACE tablespace] |[cláusula_paralelismo]] |[MODIFY PARTITION partição |[DEALLOCATE UNUSED [KEEP inteiro [K| M | G | T]]] |[ALLOCATE EXTENT (SIZE inteiro [K | M | G | T] |DATAFILE ‘arquivo’ |INSTANCE inteiro)] |[cláusula_atributos_físicos]|[LOGGING | NOLOGGING] |[COMPRESS inteiro | NOCOMPRESS] |[PARAMETERS('parâmetros_alteração_índice')] |[COALESCE] |[UPDATE BLOCK REFERENCES]|[UNUSABLE] |[RENAME [PARTITION partição_nome_atual | SUBPARTITION subpartição_nome_atual] TO nome_novo] |[DROP PARTITION partição] |[SPLIT PARTITION partição_antiga AT (lista_valores,...) INTO (PARTITION [cláusula_atributos_físicos] |[TABLESPACE tablespace]|[LOGGING| NOLOGGING] |[COMPRESS inteiro| NOCOMPRESS]])|[cláusula_paralelismo] |[COALESCE PARTITION |[cláusula_paralelismo]] |[MODIFY SUBPARTITION subpartição [UNUSABLE |[DEALLOCATE UNUSED [KEEP inteiro [K| M | G | T]]] |[ALLOCATE EXTENT (SIZE inteiro [K | M | G | T] |DATAFILE ‘arquivo’ |INSTANCE inteiro)]]; cláusula_atributos_físicos::= (descrição da cláusula na página 92) [PCTFREE inteiro | PCTUSED inteiro |INITRANS inteiro | MAXTRANS inteiro |[STORAGE ( INITIAL inteiro [K | M] | NEXT inteiro [K | M] | MINEXTENTS inteiro | MAXEXTENTS inteiro [UNLIMITED] | PCTINCREASE inteiro | FREELISTS inteiro | FREELISTS GROUPS inteiro | OPTIMAL [inteiro [K | M] | NULL]] | BUFFER_POOL [KEEP | RECYCLE | DEFAULT]] cláusula_paralelismo :: = [PARALLEL inteiro | NOPARALLEL] Parâmetro Significado DEALLOCATED UNUSED Libera os espaços em disco que não estão sendo utilizados pelo índice. KEEP Quantidade de espaço em disco que deverá ser mantida durante a liberação do espaço em disco. ALLOCATE EXTENT Reserva espaço em disco para uma nova extensão do índice. SIZE Tamanho (em bytes) da extensão. DATAFILE Nome do datafile na tablespace que terá a nova extensão. INSTANCE Cria uma nova extensão na instância especificada. LOGGING | NOLOGGING Grava ou não as atividades de (inclusão/alteração) nos arquivos de redo log. Este parâmetro é indicado para cargas, aumenta o desempenho. PARTITION Recria uma partição de um índice existente. SUBPARTITION Recria uma subpartição de um índice existente. REBUILD Recria um índice existente. REVERSE Armazena os bytes do índice na ordem reversa, eliminando o ROWID. NOREVERSE Armazena os bytes do índice sem inverter a ordem. TABLESPACE Nome da tablespace onde o índice, partição do índice, subpartição do índice serão recriados.