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

python連接PostgreSQL數(shù)據(jù)庫的過程詳解

 更新時間:2019年09月18日 14:17:17   作者:郭雪原  
這篇文章主要介紹了python連接PostgreSQL數(shù)據(jù)庫的過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

1. 常用模塊

# 連接數(shù)據(jù)庫

connect()函數(shù)創(chuàng)建一個新的數(shù)據(jù)庫連接對話并返回一個新的連接實(shí)例對象

PG_CONF_123 = {
 'user':'emma',
 'port':123,
 'host':'192.168.1.123',
 'password':'emma',
 'database':'dbname'}
conn = psycopg2.connect(**PG_CONF_123)

# 打開一個操作整個數(shù)據(jù)庫的光標(biāo)

連接對象可以創(chuàng)建光標(biāo)用來執(zhí)行SQL語句

cur = conn.cursor()

# 執(zhí)行一個創(chuàng)建表的SQL語句

光標(biāo)可以使用execute()和executemany()函數(shù)

cur.execute("CREATE TABLE test (id serial PRIMARY KEY, num integer, data varchar);")

# 傳遞參數(shù)給插入語句

cur.execute("INSERT INTO test (num, data) VALUES (%s, %s)",(100, "abc'def"))

# 執(zhí)行查詢語句并將獲取到的數(shù)據(jù)作為python對象

cur.execute("SELECT * FROM test;")
cur.fetchone()
(1, 100, "abc'def")

# 提交修改

如果只使用查詢語句不用commit方法,insert/update/delete等操作需要調(diào)用commit()。rollback()函數(shù)用于會滾到上次調(diào)用commit()方法之后。

conn.commit()

# 關(guān)閉數(shù)據(jù)庫連接

cur.close()
conn.close()

2. 防范SQL注入漏洞

典型的SQL注入漏洞形式:

SQL = "select * from userinfo where id = '%s'" % (id)
SQL = "select * from userinfo where id = '{}'".format(id)

如果有人惡意攻擊,在傳入?yún)?shù)的代碼中加入惡意代碼,如:

request.id = '123; drop tabel userid;'

會造成嚴(yán)重風(fēng)險,為防止此問題,應(yīng)該通過第二位變量傳入?yún)?shù)的方法:%s(無論變量是什么數(shù)據(jù)類型,都使用%s)

SQL = "INSERT INTO authors (name) VALUES (%s);" # Note: no quotes
data = ("O'Reilly", )
cur.execute(SQL, data) # Note: no % operator

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python調(diào)用jar包方法實(shí)現(xiàn)過程解析

    Python調(diào)用jar包方法實(shí)現(xiàn)過程解析

    這篇文章主要介紹了Python調(diào)用jar包方法實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-08-08
  • python Opencv將圖片轉(zhuǎn)為字符畫

    python Opencv將圖片轉(zhuǎn)為字符畫

    這篇文章主要為大家詳細(xì)介紹了python Opencv將圖片轉(zhuǎn)為字符畫的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Python爬蟲之對CSDN榜單進(jìn)行分析

    Python爬蟲之對CSDN榜單進(jìn)行分析

    這篇文章主要介紹了Python爬蟲之對CSDN榜單進(jìn)行分析,文章有詳細(xì)代碼,簡單易懂,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2023-01-01
  • 用python構(gòu)建IP代理池詳解

    用python構(gòu)建IP代理池詳解

    大家好,本篇文章主要講的是用python構(gòu)建IP代理池詳解,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-01-01
  • vscode 與pycharm 配置 autopep8自動格式化代碼

    vscode 與pycharm 配置 autopep8自動格式化代碼

    autopep8是一個可以將Python代碼自動排版為PEP8風(fēng)格第三方包,使用它可以輕松地排版出格式優(yōu)美整齊的代碼,這里就為大家分享一下具體的方法
    2023-09-09
  • python?通過dict(zip)和{}的方式構(gòu)造字典的方法

    python?通過dict(zip)和{}的方式構(gòu)造字典的方法

    在python中,通常通過dict和zip組合來構(gòu)建鍵值對,這篇文章主要介紹了python?通過dict(zip)和{}的方式構(gòu)造字典的方法,需要的朋友可以參考下
    2022-07-07
  • Python導(dǎo)入Excel表格數(shù)據(jù)并以字典dict格式保存的操作方法

    Python導(dǎo)入Excel表格數(shù)據(jù)并以字典dict格式保存的操作方法

    本文介紹基于Python語言,將一個Excel表格文件中的數(shù)據(jù)導(dǎo)入到Python中,并將其通過字典格式來存儲的方法,感興趣的朋友一起看看吧
    2023-01-01
  • python中的變量如何開辟內(nèi)存

    python中的變量如何開辟內(nèi)存

    python中的變量如何開辟內(nèi)存?今天小編就為大家介紹一下python中變量開辟內(nèi)存的方法。具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • Python排序方法中sort和sorted的區(qū)別詳解

    Python排序方法中sort和sorted的區(qū)別詳解

    在python中常用的排序函數(shù)就是sort()和sorted()這兩個函數(shù),使用 sort() 或內(nèi)建函數(shù) sorted() 對列表進(jìn)行排序,本文將詳細(xì)介紹sorted和sort兩者之間的區(qū)別,感興趣的可以了解一下
    2023-08-08
  • Selenium 模擬瀏覽器動態(tài)加載頁面的實(shí)現(xiàn)方法

    Selenium 模擬瀏覽器動態(tài)加載頁面的實(shí)現(xiàn)方法

    這篇文章主要介紹了Selenium 模擬瀏覽器動態(tài)加載頁面的實(shí)現(xiàn)方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05

最新評論

宁阳县| 嘉善县| 吉隆县| 遵义县| 通河县| 沛县| 高安市| 桐梓县| 朝阳县| 大庆市| 永安市| 分宜县| 徐州市| 景东| 安顺市| 自贡市| 含山县| 乌鲁木齐县| 伊吾县| 永仁县| 渑池县| 托里县| 河曲县| 江孜县| 峡江县| 克山县| 石楼县| 漯河市| 景泰县| 宜阳县| 登封市| 边坝县| 乌拉特前旗| 望城县| 呈贡县| 盖州市| 衢州市| 西平县| 米泉市| 石屏县| 罗定市|