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

Python連接到PostgreSQL數(shù)據(jù)庫的方法詳解

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

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

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

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

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

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

實(shí)際上,前者管理數(shù)據(jù)庫,而后者是構(gòu)建數(shù)據(jù)庫的框架。

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

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

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

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

pgAdmin 是一個用于管理在 PostgreSQL 上運(yùn)行的數(shù)據(jù)庫的有效工具。 可以在應(yīng)用程序的在線網(wǎng)頁上找到安裝程序等可下載文件。

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

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

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

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

在 pgAdmin 中創(chuàng)建數(shù)據(jù)服務(wù)器

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

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

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

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

首先,需要服務(wù)器的名稱。 之后,轉(zhuǎn)到連接菜單。

那里需要主機(jī)名,通常是 localhost。 端口必須設(shè)置為 5432。

遵循以上幾點(diǎn)就足以創(chuàng)建一個有用的數(shù)據(jù)服務(wù)器。

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

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

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

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

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

數(shù)據(jù)庫的定義有多個選項(xiàng)需要設(shè)置。 以下是眾多可用選項(xiàng)中的一些更重要的選項(xiàng)。

  • 編碼必須設(shè)置為 - UTF - 8。
  • 模板應(yīng)在 Postgres 中設(shè)置。
  • 表空間應(yīng)設(shè)置為 pg_default。

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

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

將 PostgreSQL 數(shù)據(jù)庫連接到 Python 的步驟

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

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

在本文中,程序使用 psycopg2 導(dǎo)入包連接到 PostgreSQL 數(shù)據(jù)庫,獲取數(shù)據(jù)庫版本,然后打印它們。

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

該文件存儲與服務(wù)器相關(guān)的詳細(xì)信息,有助于 config.py 文件配置數(shù)據(jù)庫。 文件頭位于文件的頂部,用于聲明所使用的 RDBMS。

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

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

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

該程序使用導(dǎo)入包c(diǎn)onfigparser。 方法配置使用兩個參數(shù)聲明:文件名和部分。

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

下面是從數(shù)據(jù)庫中提取項(xiàng)目的 get 方法。 get 部分放在 if-else 語句內(nèi),其中 else 方法處理異常。

最后返回變量數(shù)據(jù)庫。

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 數(shù)據(jù)庫的步驟

該程序有兩個導(dǎo)入文件。

  • psycopg2
  • config

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

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

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

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

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

獲取數(shù)據(jù)庫版本后,使用 var_cur.close() 關(guān)閉游標(biāo)。

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

在異常處理結(jié)束時(shí),添加一個finally 塊,使用語法 connection.close() 關(guān)閉連接。 連接關(guān)閉后,數(shù)據(jù)庫會打印一條消息,確認(rèn)連接已關(guān)閉。

最后調(diào)用方法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()

輸出:

總結(jié)

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

大家將詳細(xì)學(xué)習(xí)如何使用 Python 連接數(shù)據(jù)庫,以便快速掌握并在實(shí)際項(xiàng)目中使用。

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

相關(guān)文章

  • 如何解決django-celery啟動后迅速關(guān)閉

    如何解決django-celery啟動后迅速關(guān)閉

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

    Python 基礎(chǔ)教程之str和repr的詳解

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

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

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

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

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

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

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

    Python Dict找出value大于某值或key大于某值的所有項(xiàng)方式

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

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

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

    django redis的使用方法詳解

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

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

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

    基于python繪制科赫雪花

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

最新評論