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

windows環(huán)境下python連接openGauss數(shù)據(jù)庫(kù)的全過程

 更新時(shí)間:2023年01月04日 09:09:39   作者:Gauss松鼠會(huì)  
openGauss是一款全面友好開放,攜手伙伴共同打造的企業(yè)級(jí)開源關(guān)系型數(shù)據(jù)庫(kù),這篇文章主要給大家介紹了關(guān)于windows環(huán)境下python連接openGauss數(shù)據(jù)庫(kù)的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

一、python 介紹

python最新版

windows python是款面向?qū)ο蟆⒅弊g式計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言,同時(shí)也是一種功能強(qiáng)大而完善的通用型語(yǔ)言,具有非常簡(jiǎn)潔而清晰的語(yǔ)法特點(diǎn),適合完成各種高層任務(wù),幾乎可以在所有的操作系統(tǒng)中運(yùn)行。

Python特殊功能

  • 很清楚、明確、易讀的語(yǔ)法
  • 較強(qiáng)的自省能力
  • 直觀的面向?qū)ο?/li>
  • 自然的表達(dá)程序代碼
  • 完整的模塊化設(shè)計(jì),支持分層包
  • 基于異常的錯(cuò)誤處理
  • 非常高的水平動(dòng)態(tài)數(shù)據(jù)類型
  • 幾乎每一個(gè)任務(wù)的廣泛的標(biāo)準(zhǔn)庫(kù)和第三方模塊
  • 擴(kuò)展和模塊很容易寫在C,C + +(或Java的Jython或NET語(yǔ)言IronPython的)
  • 嵌入在應(yīng)用程序中作為腳本接口

Python 軟件亮點(diǎn)

  • 完全模塊化,Python核心編程軟件支持分層包
  • 基于異常的錯(cuò)誤處理
  • 非常高級(jí)別的動(dòng)態(tài)數(shù)據(jù)類型
  • 廣泛的標(biāo)準(zhǔn)庫(kù)和第三方模塊,Python核心編程軟件幾乎被用于每個(gè)任務(wù)
  • 擴(kuò)展和模塊易于使用C,C ++(或Jython Java,或IronPython的.NET語(yǔ)言)
  • 可嵌入應(yīng)用程序作為腳本界面

Python說(shuō)明

Python是一個(gè)解釋性語(yǔ)言,因?yàn)椴恍枰幾g和連接所以能節(jié)省大量的程序開發(fā)時(shí)間。解釋程序可以交互使用,這樣可以可以很容易地試驗(yàn)語(yǔ)言的各種特色,寫只用一次的程序,或在從底向上程序開發(fā)中測(cè)試函數(shù)。它也是一個(gè)方便的計(jì)算器。

Python是一種面向?qū)ο?、直譯式計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言,也是一種功能強(qiáng)大而完善的通用型語(yǔ)言,已經(jīng)具有十多年的發(fā)展歷史,成熟且穩(wěn)定。這種語(yǔ)言具有非常簡(jiǎn)捷而清晰的語(yǔ)法特點(diǎn),適合完成各種高層任務(wù),幾乎可以在所有的操作系統(tǒng)中運(yùn)行。目前,基于這種語(yǔ)言的相關(guān)技術(shù)正在飛速的發(fā)展,用戶數(shù)量急劇擴(kuò)大,相關(guān)的資源非常多。

Python可用于的操作系統(tǒng):Windows和Linux / Unix系統(tǒng),OS / 2,Mac上,Amiga上,其中包括。甚至有NET和Java虛擬機(jī)上運(yùn)行,Python的實(shí)現(xiàn)是一個(gè)開源許可證,使得它可以自由使用和分派下,甚至用于商業(yè)用途。

二、Python下載及安裝

1、下載: 進(jìn)入python官網(wǎng)下載(https://www.python.org/)。鼠標(biāo)指向Downloads(不用點(diǎn)擊)會(huì)彈出下拉框,直接點(diǎn)擊windows下的Python 3.11.0即可下載。(國(guó)外網(wǎng)站下載較慢,建議找個(gè)國(guó)內(nèi)的資源下載)

2、下載好之后,右鍵以管理員身份運(yùn)行exe可執(zhí)行文件。

這里勾選Add Python 3.11 to PATH (把Python的安裝路徑添加到系統(tǒng)環(huán)境 變量的Path變量中,如果不選那就需要自己配置環(huán)境變量了,參見FAQ) ,Install Now 默認(rèn)安裝,Customize installation 自定義安裝。

這里選自定義安裝,安裝Python文檔、Python的pip等…默認(rèn)即可,直接next

路徑可以更改一下:

自動(dòng)安裝中……

最后點(diǎn)這里(紅圈處)。

安裝完成。

打開(cmd)終端窗口,輸入python命令,進(jìn)行驗(yàn)證,看到相關(guān)版本信息,即表示安裝成功。

打開(cmd)終端窗口,輸入pip 命令,驗(yàn)證環(huán)境變量是否配置成功。

下載并安裝模塊:打開cmd窗口,鍵入命令 pip install requests 進(jìn)行安裝,使用pip list命令查看是否已經(jīng)安裝模塊。

三、openGauss Connectors (Psycopg2) 介紹

Psycopg是一種用于執(zhí)行SQL語(yǔ)句的PythonAPI,可以為PostgreSQL、openGauss數(shù)據(jù)庫(kù)提供統(tǒng)一訪問接口,應(yīng)用程序可基于它進(jìn)行數(shù)據(jù)操作。Psycopg2是對(duì)libpq的封裝,主要使用C語(yǔ)言實(shí)現(xiàn),既高效又安全。它具有客戶端游標(biāo)和服務(wù)器端游標(biāo)、異步通信和通知、支持“COPY TO/COPY FROM”功能。支持多種類型Python開箱即用,適配PostgreSQL數(shù)據(jù)類型;通過靈活的對(duì)象適配系統(tǒng),可以擴(kuò)展和定制適配。Psycopg2兼容Unicode和Python 3。

openGauss數(shù)據(jù)庫(kù)提供了對(duì)Psycopg2特性的支持,并且支持Psycopg2通過SSL模式鏈接。

四、openGauss Connectors (Psycopg2)下載并初始化

登錄openGauss社區(qū)(https://opengauss.org/zh/download/)下載對(duì)應(yīng)的openGauss數(shù)據(jù)庫(kù)連接器(本測(cè)試環(huán)境下載的是Python-psycopg2_2.1.0,版本與數(shù)據(jù)版本匹配)。

從發(fā)布包中獲取,包名為openGauss-xxxx-操作系統(tǒng)版本號(hào)-64bit-Python.tar.gz。解壓后有兩個(gè)文件夾:psycopg2庫(kù)文件和lib庫(kù)文件。

將psycopg2拷貝到python安裝目錄的第三方包文件夾(即site-packages目錄)下。

將lib文件夾中的文件拷貝到安裝目錄Lib目錄下。

對(duì)于非數(shù)據(jù)庫(kù)用戶,需要將解壓后的lib目錄,配置在LD_LIBRARY_PATH環(huán)境變量中(參考FAQ)。

下載并安裝模塊:打開cmd窗口,鍵入命令pip install psycopg2

五、連接并訪問openGauss數(shù)據(jù)庫(kù)

前置條件:openGauss數(shù)據(jù)庫(kù)已成功安裝、并成功啟動(dòng)。

編輯好python文件,并保存。(本測(cè)試腳本功能主要實(shí)現(xiàn)鏈接openGauss數(shù)據(jù)庫(kù)、創(chuàng)建表、插入數(shù)據(jù)、查詢數(shù)據(jù)等)

附原腳本:

#!/usr/bin/python
import psycopg2
conn = psycopg2.connect(database="postgres", user="omm2", password="P@ssw0rd123", host="192.168.52.3", port="26000")

cur = conn.cursor()

#創(chuàng)建表COMPANY1
cur.execute('''CREATE TABLE COMPANY1
       (ID INT PRIMARY KEY     NOT NULL,
       NAME           TEXT    NOT NULL,
       AGE            INT     NOT NULL,
       ADDRESS        CHAR(50),
       SALARY         REAL);''')
       
#插入數(shù)據(jù)       
cur.execute("INSERT INTO COMPANY1 (ID,NAME,AGE,ADDRESS,SALARY) \
      VALUES (1, 'Paul', 32, 'California', 20000.00 )");

cur.execute("INSERT INTO COMPANY1 (ID,NAME,AGE,ADDRESS,SALARY) \
      VALUES (2, 'Allen', 25, 'Texas', 15000.00 )");

cur.execute("INSERT INTO COMPANY1 (ID,NAME,AGE,ADDRESS,SALARY) \
      VALUES (3, 'Teddy', 23, 'Norway', 20000.00 )");

cur.execute("INSERT INTO COMPANY1 (ID,NAME,AGE,ADDRESS,SALARY) \
      VALUES (4, 'Mark', 25, 'Rich-Mond ', 65000.00 )");       
      
#查詢結(jié)果
cur.execute("SELECT id, name, address, salary  from COMPANY1")
rows = cur.fetchall()
for row in rows:
   print("ID = ", row[0])
   print("NAME = ", row[1])
   print("ADDRESS = ", row[2])
   print("SALARY = ", row[3])

conn.commit()
conn.close()

執(zhí)行python腳本:打開(cmd)終端窗口, 執(zhí)行命令“python new2.py”,如下截圖。

如上出現(xiàn)以上結(jié)果, 則表示python鏈接openGauss數(shù)據(jù)庫(kù)成功,執(zhí)行創(chuàng)建表、插入數(shù)據(jù)、查詢數(shù)據(jù)成功。

六、問題總結(jié)(FAQ)

1、python 環(huán)境變量配置參考:

2、打開(cmd)終端窗口,輸入pip,遇到:‘pip’不是內(nèi)部或外部命令,也不是可運(yùn)行的程序或批處理文件。即下圖這種情況:

解決辦法:添加環(huán)境變量。復(fù)制python安裝目錄 Scripts的路勁, 調(diào)價(jià)到 Path下(參考上文python安裝時(shí)配置環(huán)境變量的圖示)。

3、在執(zhí)行python腳本時(shí),如果報(bào)錯(cuò):ModuleNotFoundError:No module named ‘psycopg2._psycopg’。 則需要執(zhí)行pip install psycopg2 命令, 下載安裝模塊。

4、在鏈接openGauss數(shù)據(jù)庫(kù)時(shí),提示:Forbid remote connection with initial user ,意思是禁止用初始用戶進(jìn)行遠(yuǎn)程連接,即不要使用數(shù)據(jù)庫(kù)默認(rèn)的omm用戶訪問。

5、Psycopg(接口)參考

Psycopg接口是一套提供給用戶的API方法。

1)psycopg2.connect() :此方法創(chuàng)建新的數(shù)據(jù)庫(kù)會(huì)話并返回新的connection對(duì)象。

原型:

conn=psycopg2.connect(dbname=“test”,user=“postgres”,password=“secret”,host=“127.0.0.1”,port=“5432”)

返回值:connection對(duì)象(連接openGauss數(shù)據(jù)庫(kù)實(shí)例的對(duì)象)。

參數(shù) :

關(guān)鍵字 參數(shù)說(shuō)明
dbname 數(shù)據(jù)庫(kù)名稱。
user 用戶名。
password 密碼。
host 數(shù)據(jù)庫(kù)IP地址,默認(rèn)為UNIX socket類型。
port 連接端口號(hào),默認(rèn)為5432。
sslmode ssl模式,ssl連接時(shí)用。
sslcert 客戶端證書路徑,ssl連接時(shí)用。
sslkey 客戶端密鑰路徑,ssl連接時(shí)用。
sslrootcert 根證書路徑,ssl連接時(shí)用。

2)connection.cursor():此方法用于返回新的cursor對(duì)象。

原型:

cursor(name=None, cursor_factory=None, scrollable=None, withhold=False)

返回值 :cursor對(duì)象(用于整個(gè)數(shù)據(jù)庫(kù)使用Python編程的cursor)。

參數(shù) :
關(guān)鍵字 參數(shù)說(shuō)明
name cursor名稱,默認(rèn)為None。
cursor_factory 用于創(chuàng)造非標(biāo)準(zhǔn)cursor,默認(rèn)為None。
scrollable 設(shè)置SCROLL選項(xiàng),默認(rèn)為None。
withhold 設(shè)置HOLD選項(xiàng),默認(rèn)為False。

3)cursor.execute(query,vars_list) :此方法執(zhí)行被參數(shù)化的SQL語(yǔ)句(即占位符,而不是SQL文字)。psycopg2模塊支持用%s標(biāo)志的占位符。

原型

curosr.execute(query,vars_list)

參數(shù):
關(guān)鍵字 參數(shù)說(shuō)明
query 待執(zhí)行的sql語(yǔ)句。
vars_list 變量列表,匹配query中%s占位符。

4)cursor.fetchall():此方法獲取查詢結(jié)果的所有(剩余)行,并將它們作為元組列表返回。

原型:

cursor.fetchall()

5)connection.commit():此方法將當(dāng)前掛起的事務(wù)提交到數(shù)據(jù)庫(kù)。注意: 默認(rèn)情況下,Psycopg在執(zhí)行第一個(gè)命令之前打開一個(gè)事務(wù):如果不調(diào)用commit(),任何數(shù)據(jù)操作的效果都將丟失。

原型:

connection.commit()

6)connection.close():此方法關(guān)閉數(shù)據(jù)庫(kù)連接。注意: 此方法關(guān)閉數(shù)據(jù)庫(kù)連接,并不自動(dòng)調(diào)用commit()。如果只是關(guān)閉數(shù)據(jù)庫(kù)連接而不調(diào)用commit()方法,那么所有更改將會(huì)丟失。

原型:

connection.close()

總結(jié)

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

相關(guān)文章

  • 交互分布式系統(tǒng)下如何生成唯一序列

    交互分布式系統(tǒng)下如何生成唯一序列

    在分布式系統(tǒng)中,由于涉及到多個(gè)不同業(yè)務(wù)module的交互,以及高并發(fā)的場(chǎng)景。我們需要系統(tǒng)能夠生成一個(gè)跨業(yè)務(wù)module的全網(wǎng)唯一序列號(hào),來(lái)保證我們業(yè)務(wù)操作的獨(dú)立性和唯一性
    2022-01-01
  • Linux下開啟和配置OpenGauss數(shù)據(jù)庫(kù)遠(yuǎn)程連接的教程詳解

    Linux下開啟和配置OpenGauss數(shù)據(jù)庫(kù)遠(yuǎn)程連接的教程詳解

    openGauss是一款開源關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),采用木蘭寬松許可證v2發(fā)行,本文主要為大家介紹了Linux系統(tǒng)中如何開啟和配置OpenGauss數(shù)據(jù)庫(kù)的遠(yuǎn)程連接,需要的小伙伴可以參考下
    2023-12-12
  • Python使用RethinkDB總結(jié)

    Python使用RethinkDB總結(jié)

    最近一個(gè)項(xiàng)目要用到文檔數(shù)據(jù)庫(kù),順便關(guān)注了一下 NoSQL 方面的消息。當(dāng)前幾個(gè)比較流行的文檔數(shù)據(jù)庫(kù)引擎有 MongoDB, CouchDB, OrientDB 等,朋友推薦的是 MongoDB 和 RethinkDB
    2014-03-03
  • Apache?Hudi集成Spark?SQL操作hide表

    Apache?Hudi集成Spark?SQL操作hide表

    這篇文章主要為大家介紹了Apache?Hudi集成Spark?SQL操作hide表,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪
    2022-03-03
  • SQL四舍五入、向下取整、向上取整函數(shù)介紹

    SQL四舍五入、向下取整、向上取整函數(shù)介紹

    這篇文章主要介紹了SQL四舍五入、向下取整、向上取整函數(shù)介紹,本文用簡(jiǎn)潔直白的語(yǔ)言介紹了實(shí)現(xiàn)這三個(gè)需求的函數(shù),需要的朋友可以參考下
    2015-06-06
  • DataGrip 連接 HiveServer2 報(bào)錯(cuò)的問題

    DataGrip 連接 HiveServer2 報(bào)錯(cuò)的問題

    這篇文章主要介紹了DataGrip 連接 HiveServer2 報(bào)錯(cuò)的問題,本文通過圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • TDSQL 安裝部署附圖的實(shí)現(xiàn)(圖文)

    TDSQL 安裝部署附圖的實(shí)現(xiàn)(圖文)

    這篇文章主要介紹了TDSQL 安裝部署附圖的實(shí)現(xiàn)(圖文),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • Hive日期格式轉(zhuǎn)換方法總結(jié)

    Hive日期格式轉(zhuǎn)換方法總結(jié)

    這篇文章主要為大家介紹了Hive日期格式轉(zhuǎn)換方法總結(jié),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • GaussDB數(shù)據(jù)庫(kù)使用COPY命令導(dǎo)入導(dǎo)出數(shù)據(jù)的場(chǎng)景分析

    GaussDB數(shù)據(jù)庫(kù)使用COPY命令導(dǎo)入導(dǎo)出數(shù)據(jù)的場(chǎng)景分析

    使用COPY命令可以方便地導(dǎo)入數(shù)據(jù)到GaussDB,GaussDB還提供了其他數(shù)據(jù)導(dǎo)入工具和功能,如使用GDS導(dǎo)入數(shù)據(jù)、使用INSERT多行插入、使用gsql元命令導(dǎo)入數(shù)據(jù)、ETL工具集成等,以滿足不同場(chǎng)景下的數(shù)據(jù)導(dǎo)入需求,對(duì)GaussDB COPY命令相關(guān)知識(shí)感興趣的朋友一起看看吧
    2024-01-01

最新評(píng)論

荥阳市| 罗定市| 大荔县| 鹰潭市| 衢州市| 息烽县| 封丘县| 中西区| 乌兰察布市| 布尔津县| 利川市| 北辰区| 马公市| 垦利县| 吉木萨尔县| 田东县| 军事| 肃宁县| 金川县| 达州市| 荥经县| 横峰县| 大丰市| 政和县| 晋江市| 通河县| 子长县| 襄城县| 平凉市| 沧源| 清涧县| 海口市| 玉山县| 册亨县| 上饶市| 弋阳县| 马关县| 黔南| 班戈县| 鱼台县| 乌拉特后旗|