最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python操作PostgreSQL數(shù)據(jù)庫的基本方法(增刪改查)

 更新時(shí)間:2023年09月17日 10:51:21   作者:張六十zhangliushi  
PostgreSQL數(shù)據(jù)庫是最常用的關(guān)系型數(shù)據(jù)庫之一,最吸引人的一點(diǎn)是它作為開源數(shù)據(jù)庫且具有可拓展性,能夠提供豐富的應(yīng)用,這篇文章主要給大家介紹了關(guān)于Python操作PostgreSQL數(shù)據(jù)庫的基本方法,文中介紹了連接PostgreSQL數(shù)據(jù)庫,以及增刪改查,需要的朋友可以參考下

前言

本文分享使用Python操作PostgreSQL數(shù)據(jù)庫的基本方法,包括數(shù)據(jù)庫連接、增、刪、改、查,供各位小伙伴參考。

一、連接PostgreSQL數(shù)據(jù)庫

操作MySQL數(shù)據(jù)庫主要使用psycopg2包,連接PostgreSQL數(shù)據(jù)庫的語法為connect(IP, 端口, 用戶名, 密碼, 數(shù)據(jù)庫名,編碼格式)。具體代碼如下:

import psycopg2
conn = psycopg2.connect(
    host='xxx',
    port='xxx',
    dbname='xxx',
    user='xxx',
    password='xxx'
)

二、增

(一)建表

以下語法中1、2、4、5為操作數(shù)據(jù)庫的通用語法,下文其他步驟也會(huì)使用。

  • 創(chuàng)建mysql連接:pymysql.connect(),詳見上文第一點(diǎn)
  • 創(chuàng)建游標(biāo):conn.cursor()
  • 編寫建表語句,建表語句寫在三引號(hào)中
    (1)create_sql = “”“xxx”“”
    (2)cursor.execute(create_sql)
  • 提交語句:conn.commit()
  • 關(guān)閉mysql連接:conn.close()
import psycopg2
conn = psycopg2.connect(
    host='xxx',
    port='xxx',
    dbname='xxx',
    user='xxx',
    password='xxx'
)
cursor = conn.cursor()
# 建表
create_sql = """
    CREATE TABLE xxx.yyy(
        id int
       ,name varchar(10)
    );
"""
cursor.execute(create_sql)
print("create successfully")
conn.commit()
conn.close()

(二)插入數(shù)據(jù)

  • 插入單條數(shù)據(jù)的語法和sql的插入類似,直接鍵值對(duì)插入,插入語句寫在雙引號(hào)中。具體代碼如下:
import psycopg2
conn = psycopg2.connect(
    host='xxx',
    port='xxx',
    dbname='xxx',
    user='xxx',
    password='xxx'
)
cursor = conn.cursor()
# 插入
insert_sql = "INSERT INTO xx.yyy (id, name) VALUES (%s, '%s')" % (1, '張三')
cursor.execute(insert_sql)
print("insert successfully")
conn.commit()
conn.close()
  • 查詢插入數(shù)據(jù),適用于從數(shù)據(jù)庫其他表查詢關(guān)聯(lián)后插入數(shù)據(jù)到新表。插入語句寫在三引號(hào)中。具體代碼如下:
import psycopg2
conn = psycopg2.connect(
    host='xxx',
    port='xxx',
    dbname='xxx',
    user='xxx',
    password='xxx'
)
cursor = conn.cursor()
# 插入
insert_sql = """
    DROP TABLE IF EXISTS xx.yyy;
    CREATE TABLE IF NOT EXISTS xx.yyy AS
    SELECT
        aa
       ,bb
    FROM xx.yyy
"""
cursor.execute(insert_sql)
print("insert successfully")
conn.commit()
conn.close()

三、刪

(一)刪表

直接刪除表數(shù)據(jù)和表結(jié)構(gòu),其語法和SQL刪表語法一致。具體代碼如下:

import psycopg2
conn = psycopg2.connect(
    host='xxx',
    port='xxx',
    dbname='xxx',
    user='xxx',
    password='xxx'
)
cursor = conn.cursor()
# 刪表
cursor.execute("DROP TABLE IF EXISTS xx.yyy")
conn.commit()
conn.close()

(二)刪除表數(shù)據(jù)

只刪除數(shù)據(jù),不刪除表結(jié)構(gòu)。其語法和SQL刪表數(shù)據(jù)語法一致。具體代碼如下:

import psycopg2
conn = psycopg2.connect(
    host='xxx',
    port='xxx',
    dbname='xxx',
    user='xxx',
    password='xxx'
)
cursor = conn.cursor()
# 刪表數(shù)據(jù)
cursor.execute("TRUCATE TABLE xx.yyy")
conn.commit()
conn.close()

三、改

(一)更新數(shù)據(jù)

將上文所建的yyy表中,“張三”改為“何老六”。具體代碼如下:

import psycopg2
conn = psycopg2.connect(
    host='xxx',
    port='xxx',
    dbname='xxx',
    user='xxx',
    password='xxx'
)
cursor = conn.cursor()
cursor.execute("UPDATE xx.yyy SET name = '何老六' WHERE id = 1")
conn.commit()
conn.close()

(二)結(jié)果展示

四、查

(一)查詢數(shù)據(jù)庫表

直接使用pandas包查詢數(shù)據(jù)庫表,語法為read_sql(“select xxx from yyy”, con=數(shù)據(jù)庫連接)。

import psycopg2
import pandas as pd
conn = psycopg2.connect(
    host='xxx',
    port='xxx',
    dbname='xxx',
    user='xxx',
    password='xxx'
)
df = pd.read_sql("select * from xx.yyy limit 100;", con=conn)
print(df)

總結(jié)

除了PostgreSQL數(shù)據(jù)庫外,業(yè)界常用的數(shù)據(jù)庫MySQL也可以使用Python進(jìn)行操作,具體情況可參考作者的另一篇博客Python操作MySQL數(shù)據(jù)庫

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

相關(guān)文章

  • Python中X[:,0]和X[:,1]的用法

    Python中X[:,0]和X[:,1]的用法

    這篇文章主要介紹了Python中X[:,0]和X[:,1]的用法詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-05-05
  • python 巡檢腳本的項(xiàng)目實(shí)踐

    python 巡檢腳本的項(xiàng)目實(shí)踐

    本文主要介紹了python 巡檢腳本的項(xiàng)目實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • 詳解Python對(duì)某地區(qū)二手房房?jī)r(jià)數(shù)據(jù)分析

    詳解Python對(duì)某地區(qū)二手房房?jī)r(jià)數(shù)據(jù)分析

    這篇文章主要為大家介紹了Python數(shù)據(jù)分析某地區(qū)二手房房?jī)r(jià),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • python3序列化與反序列化用法實(shí)例

    python3序列化與反序列化用法實(shí)例

    這篇文章主要介紹了python3序列化與反序列化用法,實(shí)例分析了Python3使用pickle模塊針對(duì)字符串進(jìn)行序列化操作的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • Python中subprocess介紹及如何使用詳細(xì)講解

    Python中subprocess介紹及如何使用詳細(xì)講解

    在實(shí)際開發(fā)過程中,我們經(jīng)常會(huì)遇到需要從Python腳本中調(diào)用外部程序或腳本的場(chǎng)景,下面這篇文章主要給大家介紹了關(guān)于Python中subprocess介紹及如何使用詳細(xì)講解的相關(guān)資料,需要的朋友可以參考下
    2024-09-09
  • 使用python實(shí)現(xiàn)BLAST

    使用python實(shí)現(xiàn)BLAST

    最近在自學(xué)python,又用python實(shí)現(xiàn)了一下BLAST。 這次更新了打分函數(shù)如下,空位罰分改為-5,但不區(qū)分gap open 和 gap extend。
    2018-02-02
  • python進(jìn)行參數(shù)傳遞的方法

    python進(jìn)行參數(shù)傳遞的方法

    在本篇文章里小編給大家分享的是關(guān)于python進(jìn)行參數(shù)傳遞的方法以及代碼,需要的朋友們可以學(xué)習(xí)下。
    2020-05-05
  • python利用百度AI實(shí)現(xiàn)文字識(shí)別功能

    python利用百度AI實(shí)現(xiàn)文字識(shí)別功能

    這篇文章主要為大家詳細(xì)介紹了python利用百度AI實(shí)現(xiàn)文字識(shí)別,主要涉及通用文字識(shí)別、網(wǎng)絡(luò)圖片文字識(shí)別、身份證識(shí)別等文字識(shí)別功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • 初學(xué)Python函數(shù)的筆記整理

    初學(xué)Python函數(shù)的筆記整理

    這篇文章主要介紹了初學(xué)Python函數(shù)的整理筆記,包括一些基礎(chǔ)的參數(shù)使用方法以及匿名函數(shù)等特性的使用,需要的朋友可以參考下
    2015-04-04
  • Pyhton中防止SQL注入的方法

    Pyhton中防止SQL注入的方法

    這篇文章主要介紹了Pyhton中防止SQL注入的方法,本文講解的方法簡(jiǎn)單實(shí)用,需要的朋友可以參考下
    2015-02-02

最新評(píng)論

南召县| 承德县| 宝鸡市| 专栏| 宁津县| 明星| 昆山市| 应城市| 中宁县| 武冈市| 仁化县| 城固县| 通化市| 蛟河市| 东源县| 南宁市| 中江县| 荥经县| 梅州市| 南平市| 石家庄市| 余江县| 农安县| 马边| 宝兴县| 宁城县| 杂多县| 高安市| 赣榆县| 临泽县| 海宁市| 锦州市| 北碚区| 抚松县| 上蔡县| 同仁县| 烟台市| 北票市| 宁都县| 资阳市| 油尖旺区|