[Pgsql-ayuda] Duda sobre template1

Antonio Castro acastro@ciberdroide.com
Tue, 2 Sep 2003 11:37:44 +0200 (CEST)


Para cualquier comando Postgres se necesita usar el nombre de
una BD.

Yo lo que quiero es implementar una funci=F3n en shell-script
que obtenga una lista de todas las bases de datos catalogadas
en el sistema y resulta poco adecuado tener que proporcionar
el nombre de una de ellas.

Ya se que puedo usar template1 pero preferir=EDa no hacerlo.
Ignoro si template1 debe de existir forzosamente.


Yo es lo que estoy usando.  (psql -U postgres template1 -c '\l')


Tengo el mismo problema cuando quiero acceder a las tablas del
sistema para sacar informaci=F3n del cat=E1logo.

Por ejemplo si quiero consultar pg_shadow se supone que la informaci=F3n
ser=E1 la misma sea cual sea la BD con la cual se conecte y a pesar de
eso hay que indicar alguna.

En este momento se me ocurre que createdb permite crear una BD sin
especificar una BD de conexion. Compruebo un par de cosillas:

=091) /usr/bin/createdb -> pg_wrapper

=092) grep template1 /usr/bin/pg_wrapper
=09Coincidencia en el fichero binario /usr/bin/pg_wrapper


Pues parece que para este tipo de problemas se usa efectivavente
template1.  Acaso es imposible que desaparezca template1 ?

No me parece l=F3gico usar template1 a no ser que no exista otra
posibilidad ya que template1 sirve para otras cosas que no
tienen nada que ver. Lo que se necesitar=EDa en todo caso es
una BD vac=EDa y sin posibilidad alguna de contenido tipo dummy.

--=20
Un saludo
Antonio Castro

       /\     /\   Ciberdroide Inform=E1tica
         \\W//  << http://www.ciberdroide.com >>
        _|0 0|_
+-oOOO-(___o___)-OOOo---------------------+
| . . . . U U . Antonio Castro Snurmacher |
| . . . . . . . acastro@ciberdroide.com   |
+()()()---------()()()--------------------+