Je suis débutant sur PostgreSQL.
Je veux me connecter à une autre base de données à partir de l'éditeur de requêtes de Postgres - comme la USE
commande de MySQL ou MS SQL Server.
J'ai trouvé \c databasename
en cherchant sur Internet, mais il ne fonctionne que sur psql . Lorsque je l'essaie depuis l'éditeur de requêtes PostgreSQL, j'obtiens une erreur de syntaxe.
Je dois changer la base de données par pgscripting. Est-ce que quelqu'un sait comment le faire?
sudo -u postgres psql -d my_database_name
. SourceRéponses:
Lorsque vous obtenez une connexion,
PostgreSQL
c'est toujours vers une base de données particulière. Pour accéder à une autre base de données, vous devez obtenir une nouvelle connexion.L'utilisation
\c
de psql ferme l'ancienne connexion et en acquiert une nouvelle en utilisant la base de données et / ou les informations d'identification spécifiées. Vous obtenez un tout nouveau processus back-end et tout.la source
Vous devez spécifier la base de données à utiliser lors de la connexion; si vous souhaitez utiliser psql pour votre script, vous pouvez utiliser "\ c nom_database"
À ce stade, vous pouvez voir la sortie suivante
Remarquez comment l'invite change. À la vôtre, je viens de bousculer la recherche de cela aussi, trop peu d'informations sur postgreSQL par rapport à MySQL et le reste à mon avis.
la source
Dans pgAdmin, vous pouvez également utiliser
la source
Le problème de base lors de la migration de MySQL que j'ai rencontré était, je pensais que le terme
database
était le même dans PostgreSQL aussi, mais ce n'est pas le cas. Donc, si nous allons changer la base de données de notre application oupgAdmin
, le résultat ne serait pas comme prévu. Comme dans mon cas, nous avons des schémas distincts (en tenant compte de la terminologie PostgreSQL ici.) Pour chaque client et un schéma d'administration distinct. Donc, dans l'application, je dois basculer entre les schémas.Pour cela, nous pouvons utiliser la
SET search_path
commande. Cela fait basculer le schéma actuel vers le nom de schéma spécifié pour la session en cours.exemple:
Cela modifie le schéma_current en le schéma spécifié pour la session. Pour le changer définitivement, nous devons apporter des modifications au
postgresql.conf
fichier.la source
Utilisez cette virgule lors de la première connexion à
psql
la source