Respuestas:
En PostgreSQL, puede usar el \connect
metacomando de la herramienta de cliente psql:
\connect DBNAME
o en resumen:
\c DBNAME
.sql
archivo? por ejemplo, ¿puedo haber CREATE DATABASE mydb;
seguido por \connect mydb
?
psql
comandos en un archivo de script SQL.
En el indicador de PSQL, puede hacer:
\connect (or \c) dbname
Puede seleccionar la base de datos cuando se conecta con psql. Esto es útil cuando se usa desde un script:
sudo -u postgres psql -c "CREATE SCHEMA test AUTHORIZATION test;" test
\l
para bases de datos
\c
DatabaseName para cambiar a db
\df
para procedimientos almacenados en una base de datos particular
Usando el metacomando de psql \c or \connect [ dbname [ username ] [ host ] [ port ] ] | conninfo
(ver documentación ).
Ejemplo: \c MyDatabase
Tenga en cuenta que el \c
y \connect
meta-comandos son mayúsculas y minúsculas .
Use la siguiente declaración para cambiar a diferentes bases de datos que residen dentro de su RDMS postgreSQL
\c databaseName
Si desea cambiar a una base de datos específica al inicio, intente
/Applications/Postgres.app/Contents/Versions/9.5/bin/psql vigneshdb;
Por defecto, Postgres se ejecuta en el puerto 5432. Si se ejecuta en otro, asegúrese de pasar el puerto en la línea de comando.
/Applications/Postgres.app/Contents/Versions/9.5/bin/psql -p2345 vigneshdb;
Por un simple alias, podemos hacerlo útil.
Crea un alias en tu .bashrc
o.bash_profile
function psql()
{
db=vigneshdb
if [ "$1" != ""]; then
db=$1
fi
/Applications/Postgres.app/Contents/Versions/9.5/bin/psql -p5432 $1
}
Ejecutar psql
en línea de comando, cambiará a la base de datos predeterminada; psql anotherdb
, cambiará a la base de datos con el nombre en argumento, en el inicio.
Aunque no se menciona explícitamente en la pregunta, el propósito es conectarse a un esquema / base de datos específico.
Otra opción es conectarse directamente al esquema. Ejemplo:
sudo -u postgres psql -d my_database_name
Fuente de man psql
:
-d dbname
--dbname=dbname
Specifies the name of the database to connect to. This is equivalent to specifying dbname as the first non-option argument on the command line.
If this parameter contains an = sign or starts with a valid URI prefix (postgresql:// or postgres://), it is treated as a conninfo string. See Section 31.1.1, “Connection Strings”, in the
documentation for more information.
Puedes conectarte usando
\ c nombrebd
Si desea ver todos los comandos posibles para POSTGRESQL o SQL, siga estos pasos:
rails dbconsole (volverá a ingresar a su base de datos ENV actual)
\? (Para comandos POSTGRESQL)
o
\ h (para comandos SQL)
Presione Q para salir
Como se menciona en las otras respuestas, debe cambiar la conexión para usar una base de datos diferente.
Postgres trabaja con esquemas. Puede tener múltiples esquemas en una sola base de datos. Entonces, si está trabajando dentro de la misma base de datos y desea cambiar el esquema, puede hacer lo siguiente:
SET SCHEMA 'schema_name';
SET SCHEMA
se usa como SET SCHEMA 'schema_name'
no SET SCHEMA 'database_name'
. Entonces, esta es una forma SQL de cambiar el esquema, no la base de datos. También esto es similar a SET search_path TO schema_name
. Ver documentación aquí o aquí .
psql
del front-end para PostgreSQL?