Wprowadzenie do pokazywania nazw kolumn Postgres i information_schema
gdy potrzebujesz informacji o tabeli PostgreSQL lub innym obiekcie, pomocne może być przyjrzenie się schematowi tego obiektu. W PostgreSQL schematy te, wraz z innymi ważnymi informacjami, można przeglądać poprzez dostęp do information_schema
. W tym artykule pokażemy, jak połączyć się z PostgreSQL i pokażemy schemat tabeli za pomocą Postgres information_schema.,
warunki wstępne aby używać PostgreSQL
zanim spróbujemy połączyć się z PostgreSQL i wykonać kilka poleceń SQL, przejrzyjmy niektóre z kluczowych warunków wstępnych dla tego zadania:
-
najpierw upewnij się, że masz zainstalowany PostgreSQL na swoim urządzeniu. Jeśli nie masz pewności, czy ta usługa jest zainstalowana, użyj polecenia
service postgresql status
, aby dowiedzieć się, czy status jestactive
. -
musisz również zainstalować
psql
w celu interakcji z PostgreSQL z linii poleceń., Możesz użyć poleceniapsql -V
, aby potwierdzić, że ten interaktywny interfejs PostgreSQL jest zainstalowany i działa na twoim komputerze.
Utwórz bazę danych dla Postgres, która będzie używana do wyświetlania schematu tabeli
Jeśli nie masz ustawionej bazy danych PostgreSQL na swoim serwerze, pamiętaj, aby utworzyć taką, której możesz użyć w tym samouczku., Możesz utworzyć bazę danych za pomocą polecenia pokazanego poniżej:
1
|
Utwórz bazę danych some_db;
|
- wpisz polecenie
\l
wpsql
interfejs wiersza poleceń, aby wyświetlić listę wszystkie bazy danych na twoim serwerze Postgres. - następnie użyj polecenia
\c
, a następnie nazwy bazy danych, aby połączyć się z tą bazą danych.,
dostęp do bazy danych PostgreSQL przy użyciu interfejsu wiersza poleceń 'psql'
możesz użyć następującego polecenia, aby uzyskać dostęp do bazy danych PostgreSQL przy użyciu psql
interfejs wiersza poleceń:
1
|
sudo su-Postgres
|
zostaniesz poproszony o podanie hasła. Po jego wprowadzeniu będziesz miał dostęp do PostgreSQL.,
Po połączeniu użyj następującego polecenia, aby uzyskać dostęp do bazy danych z nazwą użytkownika:
1
|
PSQL some_username-H 127.0.0.1-d some_database
|
flaga -d
oznacza nazwę bazy danych postgres. Jeśli pojawi się monit o ponowne podanie hasła, po prostu wprowadź je i naciśnij RETURN.,
wyświetla wszystkie tabele PostgreSQL dla bazy danych
Jeśli chcesz wyświetlić wszystkie tabele, które zostały już utworzone, możesz użyć polecenia \d
lub \dt
do ich wyświetlenia., Polecenia te zwrócą tabelę zawierającą dane tabeli PostgreSQL w następującym formacie:
Pokaż tabelę PostgreSQL używając schematu 'pg_catalog'
Możesz również użyć instrukcji SELECT
aby wyświetlić schemat pg_catalog
dla wszystkich tabel w bieżącej bazie danych:
iv
1
|
select * from pg_catalog.pg_tables where schemaname != 'pg_catalog' i schemaname !,
|
Instrukcja pokazana powyżej wyświetli nazwę tabeli, właściciela, indeksy i inne informacje:
Uwaga: używamy WHERE
klauzula filtrująca ustawione tabele PostgreSQL, które zostaną zwrócone. Operator!=
użyty w naszej klauzuliWHERE
wskazuje, że wartośćschemaname
musi byćNOT EQUAL TO
podany warunek.,
Połącz się z Postgres, aby wyświetlić schemat tabeli i nazwy kolumn
spójrzmy na kilka przykładów, które używają information_schema
, aby uzyskać dostęp do informacji o kolumnach i schematach dla konkretnej tabeli PostgreSQL:
1
2 3 |
select * from information_schema.,columns
WHERE table_schema = 'some_schema' AND TABLE_NAME = 'some_table'; |
uwaga: gdy odwołujesz się do nazwy tabeli i wartości łańcucha schematu w WHERE
klauzula, należy dołączyć je do pojedynczych cudzysłowów ('
), aby uniknąć błędów.,
The next SQL statement will return all the information_schema
‘s attributes for a particular table:
1
|
SELECT * FROM information_schema.,kolumny, w których TABLE_NAME = 'some_table';
|
użyj information_schema w Postgres, aby uzyskać nazwy kolumn dla tabeli
Jeśli wolisz uzyskać dostęp tylko do nazw kolumn tabeli z information_schema
, można to określić w SELECT
oświadczenie:
1
|
select column_name from information_schema.,kilka wierszy danych reprezentujących nazwy kolumn tabeli PostgreSQL:
podsumowanie PostgreSQL wyświetla tabelę używając schematupodczas pracy z danymi w PostgreSQL prawdopodobnie będziesz musiał uzyskać informacje o swoich tabelach., Na szczęście łatwo jest połączyć się z PostgreSQL i pokazać schemat tabeli używając 0
Dodaj komentarz |