5.26.2008

Glogin pour SQL*Plus

Vous aimeriez savoir dans quel instance oracle et sous quel usager vous êtes connecté? C'est possible et ce rapidement avec un script de démarrage glogin pour sql plus. Ce fichier est situé dans le répertoire /admin de votre client sql plus. Évidemment, vous pouvez aussi faire ces 2 commandes:
  • select * from v$instance; (savoir le nom de votre instance)
  • sho user (savoir le nom d'usager)
Essentiellement, dans le fichier glogin, vous pouvez paramétrer l'affichage des résultats dans sql plus. Par exemple:
  • set linesize 200
  • set define off
Une fois connecté, vous pouvez aussi envoyer des commandes sql et afficher dans votre prompt (le fameux sql> ) votre identifiant et votre instance courante (identifiant:instance> ).

Voici le bout de code à ajouté à la fin de votre fichier glogin:
-- Section to build a new prompt like USERNAME:INSTANCE>
SET TERMOUT OFF
COLUMN setprompt NEW_VALUE setprompt

-- With HOSTNAME (Need "select any dictionary" grant to the user otherwise: no prompt at all)
-- SELECT '(' || HOST_NAME || ') ' || USER || ':' || SUBSTR(SUBSTR(global_name, 1, 30), 1, DECODE(INSTR(SUBSTR(global_name, 1, 30), '.') - 1, -1, 30, INSTR(SUBSTR(global_name, 1, 30), '.') - 1) ) || '> ' setprompt FROM global_name, v$instance;
-- Without HOSTNAME SELECT USER || ':' || SUBSTR(SUBSTR(global_name, 1, 30), 1, DECODE(INSTR(SUBSTR(global_name, 1, 30), '.') - 1, -1, 30, INSTR(SUBSTR(global_name, 1, 30), '.') - 1) ) || '> ' setprompt FROM global_name;

SET SQLPROMPT "&setprompt"
SET TERMOUT ON


Nouveauté avec Oracle 10g:

Tout simplement ajoutez ces 2 lignes à la fin du fichier
set time on
set sqlprompt "_USER'@'_CONNECT_IDENTIFIER _PRIVILEGE> "

et vous aurez un prompt similaire à ceci:
20:13:44 SYSTEM@orcl>



Aucun commentaire:

Mes items partagés de Google Reader