91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python3安裝psycopy2以及遇到問題解決方法

發布時間:2020-10-24 21:36:04 來源:腳本之家 閱讀:289 作者:str999_cn 欄目:開發技術

事先在網上搜索了一大圈,頭都大了,看到那么多文章寫道在python里安裝psycopg2的各種坑和各種麻煩,各種不成功。搜索了一下午,索性外出放松。晚飯后,又繼續上psycopg2官網(http://initd.org/psycopg/docs/install.html)看了一些有關install的資料,感覺還是麻煩。最后上這個網(https://pypi.python.org/pypi/psycopg2/)上,準備用wheel的方式進行安裝。

不過在此網頁上突然瞟到一句:

Python3安裝psycopy2以及遇到問題解決方法

翻譯過來就是:“如果你的pip版本支持wheel包,那么可以僅僅允許pip命令即可安裝一個二進制的Psycopg版本,包括所有依賴項”。心中竊喜。

但是我windows7里安裝的python一直沒有設置環境變量,一直用的Anaconda下面的一個spyder圖形編程界面,所以在命令行下還不能直接使用python。現在首先在環境變量的path里添加“C:\Users\Tom\Anaconda3”,這個是Anaconda3在電腦里的安裝目錄(因為我的python是通過Anaconda安裝的)。之后在命令行運行pip,發現還是不行,查看后發現pip位于Anaconda文件夾下面的Scripts文件夾下。所以還要添加“C:\Users\Tom\Anaconda3\Scripts”到環境變量,之后就可以在命令行里運行pip命令了。

Python3安裝psycopy2以及遇到問題解決方法

Python3安裝psycopy2以及遇到問題解決方法

Python3安裝psycopy2以及遇到問題解決方法

Python3安裝psycopy2以及遇到問題解決方法

至此,psycopg2成功安裝。

再來看spyder中python程序操作PostgreSQL數據庫的代碼和運行結果:

Python3安裝psycopy2以及遇到問題解決方法

        上述python代碼連接到articles數據庫,在其中創建了一個叫做Urls的數據表,該表有2個字段,第一個是字段ID,第二個是字段URL。我們打開pgAdmin4,在其中,發現articles數據庫里已經出現了Urls數據表,且包含剛剛創建的2個字段。見下表:

Python3安裝psycopy2以及遇到問題解決方法

 

------------------------------------------------------------------------------------

如果不采用Anaconda的安裝包,而直接使用的Python.org官網上的安裝包,安裝完成后是沒有pip.exe文件的。需要在python窗口另外執行以下命令,然后在Scripts文件夾下即能看到剛剛生產的幾個pip文件。

Python3安裝psycopy2以及遇到問題解決方法

Python3安裝psycopy2以及遇到問題解決方法

 Python3安裝psycopy2以及遇到問題解決方法

注意,pip3文件不是最新版本,直接下載會出錯,需要對pip首先進行更新。但更新的過程中可能會出錯,連續多嘗試幾次,最后應該會成功。

更新之后,即可按照原先的方法進行下載了。

內容擴展:

Python——使用psycopy2操作PostgreSQL

Psycopg2與其他實現了DB API 2.0協議的其他數據庫用戶基本一致。當執行包含特殊字符的SQL語句的時候,傳遞數據用來填充查詢占位符, 讓Psycopg執行正確的轉換(不再有SQL注入)

# encoding: utf-8
__author__ = 'chenlong'
 
import psycopg2
from config import ConfigServer
 
class PGSQLdb:
  def __init__(self):
    self.tryconnect()
 
  def tryconnect(self):
    # 連接到數據庫
    self.con=psycopg2.connect(database = ConfigServer['pg_db'],
           user = ConfigServer['pg_user'],
           password = ConfigServer['pg_pass'],
              host= ConfigServer['pg_host'],
              port = ConfigServer['pg_port'])
 
    # 打開一個光標,用來執行數據庫操作
    self.cur=self.con.cursor()
 
  def tryexecute(self,sqlstr):
    # 執行命令
    self.cur.execute(sqlstr)
    # 使改變永久存入數據庫
    self.con.commit()
 
 
  def tryexecute2(self,sqlstr,data):
      # 傳遞數據用來填充查詢占位符, 讓Psycopg執行正確的轉換(不再有SQL注入)
      # 第一個參數:包含占位符的SQL語句,如:"INSERT INTO test (num, data) VALUES (%s, %s)"
      # 第二個參數:與占位符對應的值,如: (100, "abc'def")
      self.cur.execute(sqlstr,data)
      self.con.commit()
 
  def tryclose(self):
    # 關閉光標
    self.cur.close()
    # 關閉連接
    self.con.close()

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

元谋县| 东源县| 普定县| 天峨县| 宣化县| 云霄县| 赣榆县| 阿拉善盟| 无锡市| 定远县| 芮城县| 崇信县| 赫章县| 繁峙县| 深水埗区| 祁东县| 海兴县| 新乡县| 陵川县| 南召县| 霍城县| 五莲县| 永仁县| 奇台县| 阳城县| 达拉特旗| 东港市| 左权县| 综艺| 阿巴嘎旗| 星座| 沙湾县| 自治县| 繁峙县| 秀山| 咸阳市| 永州市| 泉州市| 洛阳市| 万安县| 丹东市|