Jak używać PsycopG2 do podłączenia Pythona z PostgreSQL

Jak używać PsycopG2 do podłączenia Pythona z PostgreSQL

PostgreSQL to obiektowy system bazy danych, który można połączyć z różnymi językami programowania. Podczas tworzenia aplikacji Python możesz podłączyć ją do bazy danych PostgreSQL. Poza tym połączenie Pythona z PostgreSQL jest uproszczone dzięki Psycopg2 Adapter bazy danych PostgreSQL.

Po zainstalowaniu adaptera w swoim środowisku programistycznym Python możesz wykonać wszystkie zadania bazy danych PostgreSQL bezpośrednio z aplikacji Python. Ten przewodnik obejmuje różne sposoby korzystania z adaptera bazy danych PsycopG2 podczas pracy ze skryptem Python.

Jak używać PsycopG2 do podłączenia Pythona z PostgreSQL

Psycopg2 to moduł Python, który można zainstalować podczas pracy z Python. W tym samouczku pracujemy nad wirtualnym środowiskiem Python. Aby zainstalować PsycopG2, użyj pypeć Komenda.

$ PIP Instaluj PsycopG2-Binary

Utwórzmy bazę danych PostgreSQL, z którą będziemy pracować ze skryptu Python. Otwórz swoją konsolę PostgreSQL i utwórz bazę danych, z którą łączysz się z Python.

Mamy różne przypadki użycia, jak używać modułu PsycopG2 do podłączenia Pythona z PostgreSQL.

Łączenie się z bazami danych PostgreSQL

Pierwszą rzeczą, którą musisz zrobić podczas korzystania z modułu PsyCopG2, jest utworzenie połączenia z bazą danych PostgreSQL z Python.

Zacznij od zaimportowania modułu PsycopG2 do skryptu Pythona. Następnie użyj łączyć() Aby utworzyć instancję bazy danych, z którą chcesz się połączyć. Zauważ, że musisz określić nazwę bazy danych, użytkownika i hasło. W niektórych przypadkach możesz określić hosta i port.

Oto przykład:

Przy utworzonym prostym połączeniu z bazą danych sprawdź je, wykonując skrypt Python, aby sprawdzić, czy zwraca określony komunikat po zwróceniu obiektu połączenia.

$ Python

Tworzenie stołu

Aby wykonać zapytania PostgreSQL ze skryptu Python, musisz utworzyć Obiekt kursora używać w kodzie Python. Poniższy przykład wykorzystuje kursor() Aby wykonać zapytanie, aby utworzyć tabelę w bazie danych. Ponadto dołączamy kod w Spróbuj z wyjątkiem umowy na łatwe debugowanie. Zauważ, że powinieneś zamknąć połączenie obiekt i kursor Funkcja na końcu skryptu.

Załóżmy, że testujemy nasz skrypt Pythona. Potwierdzamy, że udaje nam się utworzyć tabelę i uzyskać błąd podczas próby ponownego wykonania skryptu, ponieważ już utworzyliśmy tabelę.

Obiekt kursora może być używany z różnymi metodami. Na przykład poniższy przykład wkłada wartości do tabeli, która jest wcześniej utworzona. Mimo to używamy obiektu kursora do zapytania o bazę danych i wybieramy wszystkie elementy, które wstawiliśmy za pomocą fetchall ().

Dane wyjściowe po wykonaniu skryptu potwierdza, że ​​udało nam się zapytać tabelę w naszej bazie danych PostgreSQL.

ExecuTemany

Kolejną doskonałą funkcją do użycia z obiektem kursora jest ExecuTemany (). Funkcja jest pomocna podczas wykonywania zapytania, które wpływa na różne krotki parametrów w dostarczonej sekwencji. Na przykład używamy go do odtworzenia danej tabeli poprzez wstawienie wielu wartości z określonej sekwencji.

Załóżmy, że używamy fetchall () do zapytania o wartości w odtworzonej tabeli. Wyjście podaje wszystkie wartości dostępne w odtworzonej tabeli.

Fetchone

Funkcja jest używana, gdy chcesz zwrócić następny wiersz w danym zestawie wyników zapytania. Jeśli nie ma następnego wiersza, powraca Nic lub wyświetla określoną wiadomość, aby potwierdzić, że osiągnąłeś ostatni rząd.

W poniższym przykładzie tworzymy podczas pętli Aby wydrukować wszystkie wartości z danej tabeli. Kiedy dojdziemy do ostatniego wiersza, łamiemy pętlę i drukujemy wiadomość potwierdzającą, że nie ma następnego wiersza.

Wyjście wydrukuje wszystkie wartości w tabeli i komunikat niestandardowy, gdy powróci następny wiersz Nic.

Fetchall

W przeciwieństwie do fetchone, który zwraca następny wiersz w zestawie zapytania, Fetchall zwraca wszystkie pozostałe wiersze jako listę krotek. Załóżmy, że określone zapytanie nie ma zapisów. Zwraca pusty zestaw.

Oto dane wyjściowe pobieranych rekordów, które są zwracane jako lista krotek.

Sparametryzowane zapytanie

Psycopg2 pozwala również używać sparametryzowanych zapytań, w których tworzysz symbol zastępczy dla wartości zamiast bezpośrednio pisać je w zapytaniu. W ten sposób zwiększasz bezpieczeństwo swojej aplikacji.

Poniższy przykład pokazuje, jak używać sparametryzowanych zapytań do przechowywania wartości dla aktualizacji zapytania PostgreSQL.

Poprzednie przykłady to wspólne sposoby wykorzystania PsycopG2. Możesz sprawdzić więcej funkcji z dokumentacji. Ale teraz rozumiesz, czym jest moduł PsycopG2 i jak go używać w swoim projekcie Python.

Wniosek

Psycopg2 to moduł Python, który ułatwia połączenie między Pythonem i PostgreSQL. Widzieliśmy, jak zainstalować moduł, utworzyć połączenie bazy danych PostgreSQL i wykorzystać różne obiekty i funkcje do pracy z bazą danych PostgreSQL bezpośrednio z Python. Użyj tego fundamentu, aby zwiększyć swój następny Python za pomocą projektu bazy danych PostgreSQL.