SQL em Oracle > O ambiente SQL*Plus > Variáveis de ambiente
Variáveis de ambiente tl_logo2.jpg

O SQL*Plus possui um conjunto de variáveis que controlam o ambiente de execução. O comando SET permite atribuir um valor a uma variável, que ficará activo durante a sessão. Para a maioria das variáveis os valores a atribuir são ON ou OFF.

A tabela contem as variáveis mais utilizadas, estando sublinhados os valores por omissão para cada opção:

Comando Descrição
SET ECHO [OFF|ON] ON permite que o SQL*Plus apresente os comandos à medida que são executados por um ficheiro de comandos
SET FEEDBACK n [OFF|ON] Apresenta o número de registos seleccionados numa consulta quando pelo menos n registos foram seleccionados
SET HEADING [OFF|ON] Imprime os cabeçalhos das colunas nos relatórios
SET LINESIZE n Define o número de caracteres que o SQL*Plus apresenta numa linha. O valor por omissão é 80
SET NEWPAGE n Define o número de linhas em branco entre o fim de uma página e o inicio da seguinte. Por omissão n=1.
SET NUMFORMAT string Define o formato usado por omissão para visualização de valores numéricos. Para a descrição da string consulte o comando COLUMN ou Funções para conversão de tipos - máscara para número
SET NUMWIDTH n Define o comprimento por omissão para visualização de valores numéricos. Por omissão é 10.
SET PAGESIZE n Define o número de linhas de texto que formam uma página. Por omissão é 24 para consultas. Para relatórios impressos em papel de 11'' definir um valor de 54 e um valor de 6 em NewPage.
SET TIME [OFF|ON] Mostra a hora do sistema na prompt do SQL. Comando útil para a execução de processos batch
SET PAUSE [OFF|ON] [texto] Faz pausa após um ecran de output. Escreve 'texto' no ecran
SET VERIFY [OFF|ON] Permite que o SQL*Plus mostre o texto de uma linha de comando antes e depois de substituir a referência a uma variavel de substituição pelo seu valor.
SET TIMING [OFF|ON]
CLEAR TIMMING
Permite que o SQL*Plus forneça estatísticas de tempos de execução de cada comando SQL executado
SET SPACE n Define o número de espaços entre colunas na visualização de uma tabela
SET TERM [OFF|ON] [OUT] Activa/desactiva o output de ficheiros de comandos para o ecran. OUT envia para a impressora
SET SQLCASE [mixed|lower|upper] Converte para maiúsculas/minnúsculas o texto do comando SQL introduzido. "mixed" mantem o texto inalterado
SET AUTOCOMMIT [ON|OFF|n] SET AUTOCOMMIT ON activa o commit implicito, ou seja, faz commit no fim de cada comando. Se usarmos a opção n faz commit ao fim de n comandos
SET AUTOTRACE [ON|OFF|ON EXPLAIN|ON STATISTICS] Activa a criação de "trace files". Um trace file mostra os comandos que são executados, os respectivos planos de execução e mais algumas estatísticas. Muito útil para "debugging" e optimização de SQL
SET SQLPROMPT Define a prompt do SQL*Plus
STORE SET nome Grava o estado actual das variáveis SET no ficheiro indicado. Se esse ficheiro já existir faz overwrite. Atenção que não grava as variáveis de utilizador (DEFINE variável).
DEFINE _EDITOR=nome_editor Permite definir o editor de texto que é chamado com o comando EDIT. Esta variável não faz parte do conjunto SET e por isso não é gravada com o comando STORE SET.
ex: define _editor='vi'

Utilizando o comando SHOW podemos ver o conteúdo de uma variável. SHOW ALL mostra o conteúdo actual de todas. SHOW nome_variavel só mostra da variável escolhida.

Estes comandos podem ser armazenados num ficheiro de nome LOGIN.SQL, que será lido quando arranca o SQL*Plus, activando assim as variáveis de preferência do utilizador. Este ficheiro deve ficar na directoria onde o SQL*Plus é invocado. Se executar um comando SET durante a sessão, o novo valor ficará activo até ao fim da sessão. Quando reiniciar o SQL*Plus será reactivado o valor contido em LOGIN.SQL ou o valor por omissão. A seguir mostra-se um exemplo de um ficheiro LOGIN.SQL:

define  _editor='C:\Program Files\UltraEdit\uedit32.exe'
set linesize 120
set pagesize 24
set sqlprompt 'SQL>'

bthome.gifTopo


Realizado por Turtle Learning ®. Última alteração em 2011-08-15