Personalizando o SQL*Plus / SQL*Plusw

Algo que estamos acostumados a fazer em cada nova conexão atraves do SQL*Plus é ajustar varias definições como linesize, pagesize, tamanho e cabeçalho de colunas entre inúmeras outras possibilidades para que possamos visualizar e trabalhar com as informações da melhor forma possível.

SQL> set linesize 200
SQL> set pagesize 60
SQL> col name for a40 heading nome
SQL> ....

Mas você ja pensou em ajustar o SQL*Plus para carregar estas definições personalizadas sempre que for aberto de forma automática? Ainda não?..

Então vamos conferir mais esta dica.

Dentro do $ORACLE_HOME/sqlplus/admin possuimos o arquivo glogin.sql onde podemos especificar as definições e comandos a serem executados automaticamente quando o SQL*plus for aberto, vejamos:

Vamos conectar no sqplus e verificar como estão definidos a linesize e pagesize atualmente.

maquina-de-teste > sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Tue Feb 14 15:49:54 2012

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> show linesize
linesize 80
SQL> show pagesize
pagesize 14

OBS: Podemos também verificar todos os comandos definidos atraves do “show all”

Agora vamos editar o arquivo glogin.sql e definir novos valores adicionando a linhas “set linesize 200, set pagesize 60 e set time on”:

maquina-de-teste > vi glogin.sql
--
-- Copyright (c) 1988, 2005, Oracle.  All Rights Reserved.
--
-- NAME
--   glogin.sql
--
-- DESCRIPTION
--   SQL*Plus global login "site profile" file
--
--   Add any SQL*Plus commands here that are to be executed when a
--   user starts SQL*Plus, or uses the SQL*Plus CONNECT command.
--
-- USAGE
--   This script is automatically run
--
set linesize 200
set pagesize 60
set time on
~
: x
maquina-de-teste >

Vamos reconectar no SQL*Plus e verificar como ficou:

maquina-de-teste > sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Tue Feb 14 15:55:41 2012

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

15:55:41 SQL> show linesize
linesize 200
15:56:07 SQL> show pagesize
pagesize 60
15:56:11 SQL>

Observe que agora o linesize e pagesize foram ajustados automaticamente assim como tambem temos o horário antes do SQL>

Algo bem interessante de ser configurado é de export na tela o nome do usuário conectado e SID (ORACLE_SID) para que não venhamos a cometer erros na base de dados errada…

OBS: Este parâmetro é para a versão 10G ou superior.

maquina-de-teste > vi glogin.sql
--
-- Copyright (c) 1988, 2005, Oracle.  All Rights Reserved.
--
-- NAME
--   glogin.sql
--
-- DESCRIPTION
--   SQL*Plus global login "site profile" file
--
--   Add any SQL*Plus commands here that are to be executed when a
--   user starts SQL*Plus, or uses the SQL*Plus CONNECT command.
--
-- USAGE
--   This script is automatically run
--
SET sqlprompt '&_user:&_connect_identifier > '
~
: x
maquina-de-teste >

maquina-de-teste > sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Tue Feb 14 16:13:32 2012

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SYS:teste >

%name Personalizando o SQL*Plus / SQL*Plusw

Autor: Anderson Graf

Bacharel em Sistemas de Informação e MBA em Gestão de Banco de Dados Oracle. Entusiasta da tecnologia Oracle, ACE Associate ♠, autor em vários blogs e OTN. Consultor Oracle Senior na Exímio Soluções em TI

Envolvido em soluções de:
– Implementação, migração, gerenciamento e suporte a produtos Oracle, multiplataforma
– Monitoramento de ambientes 24×7
– Backup e Recovery
– Performance e Tuning
– Alta disponibilidade (HA) – RAC, Data Guard
– EM database/grid/cloud control
– Particionamento & Advanced Compression
– Oracle Engineered Systems – ODA, Exadata

Blog pessoal: http://www.andersondba.com.br
Articulista na Oracle Technology Network (OTN) – https://goo.gl/99R6yW
ACE Associate – https://goo.gl/MBB51b
Articulista GPO – http://profissionaloracle.com.br