Jag försöker lära mig att administrera PostgreSQL och har börjat lära mig att använda kommandoradsverktyget psql
.
När jag loggar in med psql --username=postgres
, hur listar jag alla databaser och tabeller?
Jag har försökt med \d
, d
och dS+
, men ingenting visas. Jag har skapat två databaser och några tabeller med pgAdmin III, så jag vet att de borde vara listade.
Observera följande kommandon:
\list
eller \l
: lista alla databaser.\dt
: lista alla tabeller i den aktuella databasenDu kommer aldrig att se tabeller i andra databaser, dessa tabeller är inte synliga. Du måste ansluta till rätt databas för att se dess tabeller (och andra objekt).
För att byta databas:
\connect database_name
eller \c database_name
.
Se manualen om psql.
Här finns en förteckning över databaser:
SELECT datname FROM pg_database
WHERE datistemplate = false;
Här listas tabeller i den aktuella databasen
SELECT table_schema,table_name
FROM information_schema.tables
ORDER BY table_schema,table_name;