欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python連接到PostgreSQL數據庫的方法詳解

 更新時間:2023年10月30日 09:57:10   作者:跡憶客  
顧名思義,PostgreSQL?是一款為高效管理數據庫系統(tǒng)而創(chuàng)建的?SQL?系統(tǒng)軟件,這篇文章主要為大家詳細介紹了創(chuàng)建與?PostgreSQL?上的數據庫的連接的過程,需要的小伙伴可以了解下

本文介紹了創(chuàng)建與 PostgreSQL 上的數據庫的連接的過程。 我們需要安裝 PostgreSQL 和創(chuàng)建數據庫等先決條件,如下所述。

在系統(tǒng)中安裝 PostgreSQL

顧名思義,PostgreSQL 是一款為高效管理數據庫系統(tǒng)而創(chuàng)建的 SQL 系統(tǒng)軟件。

在連接Python之前需要創(chuàng)建數據庫。 Postgres,實現(xiàn)它。

許多剛開始學習數據庫開發(fā)的初學者仍然感到困惑。 據了解,數據庫是使用 pgAdmin 而不是 PostgreSQL 創(chuàng)建的。

實際上,前者管理數據庫,而后者是構建數據庫的框架。

在創(chuàng)建數據庫之前,pgAdmin 需要與 PostgreSQL 鏈接。 所以,首先需要安裝PostgreSQL。

Postgres的安裝包可以在PostgreSQL官網的下載區(qū)找到。 然后,用戶可以從那里下載并安裝該應用程序。

有多種安裝程序可用于 Mac、Linux 和 Windows 等操作系統(tǒng)。

用戶還可以獲取源代碼并在其 PC 上手動編譯并安裝 pgAdmin4。

pgAdmin 是一個用于管理在 PostgreSQL 上運行的數據庫的有效工具。 可以在應用程序的在線網頁上找到安裝程序等可下載文件。

人們可以從 pgAdmin 的所有穩(wěn)定版本的列表中進行選擇,以及與 PostgreSQL 過程類似的其他安裝包發(fā)行版。

一旦 pgAdmin 安裝到系統(tǒng)中,就可以創(chuàng)建數據庫。

使用 pgAdmin 創(chuàng)建數據服務器和數據庫

本節(jié)包含兩個小節(jié)。 第一部分解釋如何創(chuàng)建數據服務器,第二部分重點介紹數據庫。

在 pgAdmin 中創(chuàng)建數據服務器

在創(chuàng)建任何數據庫之前,需要正確設置 pgAdmin。 系統(tǒng)會提示您輸入主密碼,該密碼將在創(chuàng)建或訪問新數據庫時使用。

提供密碼后將出現(xiàn) pgAdmin 網頁。 必須搭建新的服務器來生成新的數據庫。

添加新服務器按鈕會創(chuàng)建一個對話窗口,可以在其中構建新服務器。

首先顯示的窗口提供了正在設置的服務器的功能。 在本文中,其中一些將由用戶輸入提供,而其他一些則由系統(tǒng)生成并保持原樣。

首先,需要服務器的名稱。 之后,轉到連接菜單。

那里需要主機名,通常是 localhost。 端口必須設置為 5432。

遵循以上幾點就足以創(chuàng)建一個有用的數據服務器。

在 pgAdmin 中創(chuàng)建數據庫

一旦數據服務器啟動并運行,就可以創(chuàng)建數據庫。 創(chuàng)建的服務器顯示在應用程序窗口的左側,稱為儀表板。

左側面板中服務器名稱旁邊有一個下拉圖標。 單擊此圖標時會彈出密碼對話框,請求系統(tǒng)的主密碼。

菜單顯示系統(tǒng)內創(chuàng)建的所有服務器。 它保持停用狀態(tài),直到通過單擊并出現(xiàn)密碼提示將其激活。

右鍵單擊數據庫區(qū)域并選擇創(chuàng)建。 為數據庫命名,然后在所有者部分選擇 postgres; 然后,必須設置數據庫定義。

數據庫的定義有多個選項需要設置。 以下是眾多可用選項中的一些更重要的選項。

  • 編碼必須設置為 - UTF - 8。
  • 模板應在 Postgres 中設置。
  • 表空間應設置為 pg_default。

排序規(guī)則和字符類型應按原樣設置,而連接限制設置為-1。 轉到標有 sql 的菜單將給出此處使用的查詢的概述。

單擊“保存”將創(chuàng)建一個數據庫。

將 PostgreSQL 數據庫連接到 Python 的步驟

使用 Python 連接到數據庫分為三個步驟。 首先,服務器的信息存儲在配置文件中。

將創(chuàng)建一個 Python 文件,用于解析配置 (.ini) 文件并在下一步中加載服務器。 在最后一步中,創(chuàng)建一個連接數據庫的 Python 文件。

在本文中,程序使用 psycopg2 導入包連接到 PostgreSQL 數據庫,獲取數據庫版本,然后打印它們。

創(chuàng)建存儲服務器信息的配置 (.ini) 文件

該文件存儲與服務器相關的詳細信息,有助于 config.py 文件配置數據庫。 文件頭位于文件的頂部,用于聲明所使用的 RDBMS。

  • host - 此處提供所使用的主機或服務器。
  • database - 此處給出了需要針對的特定數據庫。
  • user - 用戶應指定為 postgres,因為它是 RDBMS。
  • password - 必須在此處輸入創(chuàng)建數據庫時在 pgAdmin 中給出的主密碼。

創(chuàng)建信息文件后,可以在配置文件中使用它。

創(chuàng)建解析配置文件的 Python 文件

該程序使用導入包configparser。 方法配置使用兩個參數聲明:文件名和部分。

變量解析器被初始化,從變量文件名中讀取文件。

下面是從數據庫中提取項目的 get 方法。 get 部分放在 if-else 語句內,其中 else 方法處理異常。

最后返回變量數據庫。

from configparser import ConfigParser

def config(filename='server_info.ini', section='postgresql'):
    parser = ConfigParser()
    parser.read(filename)

    database = {}
    if parser.has_section(section):
        params = parser.items(section)
        for param in params:
            database[param[0]] = param[1]

    else:
        raise Exception('Section {0} not found in the {1} file'.format(section, filename))

    return database

連接 PostgreSQL 數據庫的步驟

該程序有兩個導入文件。

  • psycopg2
  • config

創(chuàng)建了一個連接到 PostgreSQL 數據庫服務器的方法 connect。

聲明了一個變量 param,用于讀取連接的參數。 這些參數用于連接到數據庫服務器。

語法 psycopg2.connect(**params) 加載連接參數并連接到數據庫服務器。 聲明了另一個變量 var_cur,用于存儲由 connection.cursor 語法創(chuàng)建的游標。

連接建立后,將顯示數據庫的 PostgreSQL 版本。 var_cur.execute 執(zhí)行語句 SELECT version()。

該版本被加載到變量 version_of_database 中,然后由 fetchone() 函數顯示,該函數一次獲取單個元素。 然后打印該變量。

獲取數據庫版本后,使用 var_cur.close() 關閉游標。

添加異常處理塊以引發(fā)錯誤異常。 在 except 塊內,當無法連接到數據庫或未找到數據庫時,程序會打印一條錯誤消息。

在異常處理結束時,添加一個finally 塊,使用語法 connection.close() 關閉連接。 連接關閉后,數據庫會打印一條消息,確認連接已關閉。

最后調用方法connection。

import psycopg2
from config import config


def connect():
    connection = None
    try:
        params = config()

        print('Connection made to the postgresql database')
        connection = psycopg2.connect(**params)

        var_cur = connection.cursor()

        print('Database version is - ')
        var_cur.execute('SELECT version()')

        version_of_database = var_cur.fetchone()
        print(version_of_database)

        var_cur.close()
    except (Exception, psycopg2.DatabaseError) as error:
        print(error)
    finally:
        if connection is not None:
            connection.close()
            print('Database connection closed.')


if __name__ == '__main__':
    connect()

輸出:

總結

本文討論數據庫創(chuàng)建并解釋如何在 PostgreSQL 中創(chuàng)建數據庫。 軟件工具 pgAdmin 的不同功能。

大家將詳細學習如何使用 Python 連接數據庫,以便快速掌握并在實際項目中使用。

到此這篇關于Python連接到PostgreSQL數據庫的方法詳解的文章就介紹到這了,更多相關Python連接PostgreSQL內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 如何解決django-celery啟動后迅速關閉

    如何解決django-celery啟動后迅速關閉

    在本篇文章里小編給大家整理的是關于django-celery啟動后迅速關閉的解決方法,有需要的朋友們學習下。
    2019-10-10
  • Python 基礎教程之str和repr的詳解

    Python 基礎教程之str和repr的詳解

    這篇文章主要介紹了Python 基礎教程之str和repr的詳解的相關資料,主要說明他們之家的區(qū)別,通過此文希望能幫助到大家,幫助大家理解這部分內容,需要的可以參考下
    2017-08-08
  • Python利用PyAutoGUI輕松搞定圖片上傳

    Python利用PyAutoGUI輕松搞定圖片上傳

    PyAutoGUI作為一個GUI操作的神器,我們看到了它的操作都很簡單,非常通俗易懂,基本上看到函數就能知道它的功效。本文將用它實現(xiàn)圖片上傳功能,感興趣的可以了解一下
    2022-09-09
  • python實現(xiàn)Oracle查詢分組的方法示例

    python實現(xiàn)Oracle查詢分組的方法示例

    這篇文章主要介紹了python實現(xiàn)Oracle查詢分組的方法,結合實例形式分析了python使用group by子句及having子句實現(xiàn)Oracle查詢分組的相關操作技巧,需要的朋友可以參考下
    2020-04-04
  • python基于Node2Vec實現(xiàn)節(jié)點分類及其可視化示例詳解

    python基于Node2Vec實現(xiàn)節(jié)點分類及其可視化示例詳解

    這篇文章主要為大家介紹了python基于Node2Vec實現(xiàn)節(jié)點分類及其可視化示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • Python Dict找出value大于某值或key大于某值的所有項方式

    Python Dict找出value大于某值或key大于某值的所有項方式

    這篇文章主要介紹了Python Dict找出value大于某值或key大于某值的所有項方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • pytorch.range()和pytorch.arange()的區(qū)別及說明

    pytorch.range()和pytorch.arange()的區(qū)別及說明

    這篇文章主要介紹了pytorch.range()和pytorch.arange()的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • django redis的使用方法詳解

    django redis的使用方法詳解

    本文主要介紹了django redis的使用方法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-04-04
  • Python批量重命名同一文件夾下文件的方法

    Python批量重命名同一文件夾下文件的方法

    這篇文章主要介紹了Python批量重命名同一文件夾下文件的方法,涉及Python使用os模塊操作文件的相關技巧,需要的朋友可以參考下
    2015-05-05
  • 基于python繪制科赫雪花

    基于python繪制科赫雪花

    這篇文章主要為大家詳細介紹了基于python繪制科赫雪花,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06

最新評論