Set nombre valor define una variable interna de psql

  • No School
  • AA 1
  • MateRose5861
  • 213

This preview shows page 49 - 51 out of 213 pages.

\set [nombre [valor]] : define una variable interna de psql . Si el comando se lanza sin argumentos, muestra las variables ya definidas. \ef [función [línea]] : edita la función identificada en un editor externo. \if , \elif , \else , \end : permite definir bloques de instrucciones condicionales utilizando las variables internas definidas por \set como expresiones. \x [on|off|auto] : cambia la visualización extendida. \q : sale de psql . c. Uso en modo no interactivo La herramienta psql también se puede utilizar en modo no interactivo; es decir, que las instrucciones que se deben interpretar se leen desde un archivo o un flujo, sin intervención del usuario. Este modo es útil durante la utilización de scripts de automatización de tareas, que funcionan sin la intervención del usuario. Una primera opción útil es ­f . Cuando se pasa como argumento de psql , las instrucciones se leen desde un archivo: El equivalente de este comando podría ser: También es posible leer la salida de otro comando, utilizando la redirección de flujo: o: Las dos secuencias son equivalentes, pero psql se comporta de manera diferente: en el caso de que se use la opción ­f , seguida de un guión ( ­ ), psql muestra los mensajes de errores con los números de registros. Las instrucciones se interpretan de la misma manera. La opción ­c permite ejecutar solo un comando SQL, sin tener que leerlo desde un archivo o en la entrada estándar, utilizando los argumentos de control de salida, por ejemplo: 49
Image of page 49
$ psql ­d clientes ­At ­c ’select count(*) from clientes’ 42 \set PROMPT1 ’%[email protected]%m:%>/%~%x%# ’ HISTSIZE=2000 HISTCONTROL= {ignoredups | ignorespace | ignoreboth} \set locks ’select n.nspname, c.relname, l.pid, l.mode, l.granted from pg_locks l join pg_class c on l.relation=c.oid join pg_namespace n on c.relnamespace=n.oid;’ d. Archivo de configuración La herramienta psql se puede configurar por medio del archivo .psqlrc , ubicado en la raíz del directorio personal del usuario de sistema. Contiene diferentes instrucciones. El principio es el mismo que para el archivo .bashrc del shell bash. Los ajustes permiten personalizar el comportamiento interactivo de psql . Por ejemplo, es posible modificar el registro de comandos ajustando los argumentos PROMPT1 y PROMPT2 , modificar el histórico de los comandos SQL o definir comandos SQL en una variable. La línea de comandos se puede ajustar con la línea por defecto PROMPT1 o PROMPT2 , que es la que se obtiene durante la entrada de un comando SQL en varias líneas, antes del final del comando (generalmente un punto y coma). Por ejemplo, la siguiente definición de PROMPT1 permite visualizar en orden: el nombre de usuario ( %n ), el nombre del host ( %m ), el puerto TCP ( %> ) y la base de datos actual ( %~ ): El símbolo %x agrega un asterisco al prompt cuando se abre una transacción con el comando BEGIN . El símbolo %# muestra el carácter # cuando el usuario de la sesión es un superusuario, y el carácter > , en el resto de los casos.
Image of page 50
Image of page 51

You've reached the end of your free preview.

Want to read all 213 pages?

  • Fall '19
  • Debian, Sistema operativo, Red Hat, Compilador, Sistema de archivos

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture

Stuck? We have tutors online 24/7 who can help you get unstuck.
A+ icon
Ask Expert Tutors You can ask You can ask You can ask (will expire )
Answers in as fast as 15 minutes