PostgreSQL Utwórz bazę danych, jeśli nie istnieje

PostgreSQL Utwórz bazę danych, jeśli nie istnieje
Ilekroć mówimy o PostgreSQL, zawsze myślimy o bazach danych, ponieważ jest to system zarządzania bazą danych. Możesz utworzyć jak najwięcej wybranych baz danych na serwerze PostgreSQL. Po utworzeniu wybranej bazy danych możesz utworzyć w niej wiele tabel do przechowywania danych, a następnie możesz wykonać różne obliczenia tych danych. Czasami jednak chcemy uruchomić zapytanie w istniejącej bazie danych, ale w tym celu istnienie takiej bazy danych jest obowiązkowe.

To, co rozumiemy. Ponadto istnieją pewne sytuacje, w których chcemy, aby baza danych została utworzona po uruchomieniu zapytania, jeśli nie istnieje jeszcze na naszym serwerze bazy danych. W takim przypadku zapis „Utwórz bazę danych, jeśli nie istnieje”. Niniejszy przewodnik ma na celu przedstawienie korzystania z tego notacji z krótką dyskusją na temat tego, czy PostgreSQL popiera tę notację, czy nie. Następnie podzielimy się z Tobą alternatywą dla PostgreSQL dla tej notacji.

Czy możemy użyć notacji „Utwórz bazę danych, jeśli nie istnieje” w PostgreSQL w systemie Windows 10?

Notacja „Utwórz bazę danych, jeśli nie istnieje” jest obsługiwana przez niektóre z języków programowania. Za pomocą tej notacji możesz sprawdzić, czy na serwerze bazy danych istnieje określona baza danych, a jeśli nie istnieje, to notacja po prostu utworzy tę bazę danych na serwerze. Porozmawiajmy jednak o Postgresql. PostgreSQL nie obsługuje tej notacji lub innymi słowy, możesz powiedzieć, że nie możemy użyć tej notacji bezpośrednio w PostgreSQL w systemie Windows 10.

Niemniej jednak istnieją pewne sposoby, które mogą pozwolić ci osiągnąć tę samą funkcjonalność, jak możesz osiągnąć dzięki tej konkretnej notacji. Aby dowiedzieć się więcej o tych obejściach, będziesz musiał kontynuować czytanie tego artykułu.

Jeśli nie, to jakie obejście możemy użyć do osiągnięcia tego samego celu?

Ponieważ notacji „Utwórz bazę danych, jeśli nie istnieje” nie może być używane, ponieważ znajduje się w środowisku PostgreSQL, dlatego postanowiliśmy podzielić się z Tobą obejściem, z którym możesz osiągnąć tę samą funkcjonalność. W przypadku tego obejścia będziesz musiał wykonać nieco inną odmianę tej notacji w formie zapytania PostgreSQL w systemie Windows 10. Aby zrozumieć tę odmianę, będziesz musiał wykonać kroki wyjaśnione poniżej:

Uwaga: Nie zapomnij zalogować się do swojego serwera PostgreSQL przed wykonaniem tych kroków.

Krok # 1: Przeglądanie istniejących baz danych PostgreSQL w systemie Windows 10:

Wszyscy wiemy, że chcemy utworzyć konkretną bazę danych w PostgreSQL, jeśli już istnieje na naszym serwerze. Baza danych, którą chcemy utworzyć w tym konkretnym przypadku, to „MyNewDB”. Dlatego najpierw spróbujemy znaleźć nazwy wszystkich naszych istniejących baz danych PostgreSQL, aby wiedzieć, czy taka baza danych już istnieje na naszym serwerze, czy nie. Aby wyświetlić nazwy wszystkich istniejących baz danych PostgreSQL, musisz wykonać następujące zapytanie PostgreSQL w konsoli PSQL:

# Wybierz nazwę DATName z PG_DATABase;

To zapytanie wyodrębni atrybut „nazwa danych” z PG_DATABase naszego serwera PostgreSQL. Ten atrybut zawiera nazwy wszystkich istniejących baz danych na serwerze PostgreSQL. Instrukcja „Wybierz” PostgreSQL wyświetli po prostu wyodrębnione nazwy bazy danych na konsoli, jak pokazano na poniższym obrazku:

Na powyższym obrazie można zobaczyć, że na naszym serwerze PostgreSQL nie ma nazwy „MyNewdb”; Dlatego możemy spróbować utworzyć bazę danych o tej nazwie na naszym serwerze w systemie Windows 10.

Krok 2: Tworzenie bazy danych PostgreSQL, jeśli nie istnieje w systemie Windows 10:

Teraz, ponieważ widzieliśmy, że baza danych, którą chcemy utworzyć, nie istnieje jeszcze na naszym serwerze PostgreSQL, dlatego będziemy musieli wykonać następujące zapytanie, aby utworzyć tę bazę danych:

# Wybierz „Utwórz bazę danych MyNewdb”, gdzie nie istnieje (wybierz z PG_DATABase Where DatName = „MyNewdb”) \ Gexec

Dzięki temu zapytaniu utworzymy bazę danych o nazwie „MyNewDB”, która nie była jeszcze obecna na naszym serwerze PostgreSQL na naszym systemie systemu Windows 10. Po instrukcji „Wybierz” w tym zapytaniu następuje „Utwórz instrukcję bazy danych”. Następnie wspomnieliśmy o nazwie naszej nowej bazy danych do utworzenia. Możesz nazwać to, co chcesz. Następnie napisaliśmy „gdzie nie istnieje”, która sprawdzi, czy określona baza danych istnieje na serwerze PostgreSQL, czy nie. Po wszystkich tych instrukcjach następuje podkład, w którym mamy inną instrukcję „Wybierz z”, która sprawdzi PG_DATABase naszego serwera PostgreSQL, aby potwierdzić brak istnienia bazy danych, którą próbujesz utworzyć.

Wreszcie, istnieje parametr „\ gexec”, który kończy to zapytanie. Ten parametr jest niezwykle ważny w tym zapytaniu. Ten parametr wysyła bieżący bufor zapytania do serwera PostgreSQL, gdzie każdy komponent lub atrybut wyjścia tego zapytania jest traktowany jako zapytanie SQL zamiast zapytania PostgreSQL. Jest to w rzeczywistości główny powód działania notacji „Utwórz bazę danych, jeśli nie istnieje” w PostgreSQL. W przeciwnym razie, nawet jeśli przypadkowo pominiesz ten parametr, nie będziesz w stanie osiągnąć tej funkcjonalności w PostgreSQL.

Jeśli poprawnie postępujesz zgodnie z całą składnią tego zapytania, wówczas baza danych PostgreSQL z określoną nazwą zostanie pomyślnie utworzona na serwerze PostgreSQL, który możesz potwierdzić na podstawie odpowiedzi wyjściowej pokazanej na poniższym obrazku:

Krok # 3: Sprawdzanie, czy nowa baza danych PostgreSQL została utworzona w systemie Windows 10, czy nie:

Jeśli nadal nie jesteś pewien, czy próba utworzenia nowej bazy danych PostgreSQL w wyżej wymienionym etapie zakończyła się sukces. Tym razem będziesz w stanie znaleźć tam swoją nową bazę danych. Musisz tylko uruchomić następujące zapytanie, aby to zobaczyć:

# Wybierz nazwę DATName z PG_DATABase;

Obecnie na naszym serwerze PostgreSQL istnieje w sumie dziewięć baz danych, a najnowszy to w rzeczywistości ta, którą właśnie próbowaliśmy stworzyć, jak podkreślono na obrazie pokazanym poniżej:

Wniosek:

W tym artykule mówi się o notacji „Utwórz bazę danych, jeśli nie istnieje” i jej użycie. Następnie omówiliśmy, czy ta notacja jest poparta przez PostgreSQL, czy nie. Po ustaleniu, że nie możemy użyć tej notacji bezpośrednio w PostgreSQL, udostępniliśmy Ci metodę osiągnięcia tej samej funkcjonalności, pozostając w środowisku PostgreSQL. Po przejrzeniu tej metody zrozumiesz tę niezwykle przydatną alternatywę notacji „Utwórz bazę danych, jeśli nie istnieje”.