當前位置:首頁 » 編程語言 » postgresqlpython3

postgresqlpython3

發布時間: 2023-10-09 22:52:12

Ⅰ postgresql 查看有哪些表

1. 查詢表名稱

在psql狀態下查詢表名稱:dt

SQL方式查看錶名稱:

SELECTtablenameFROMpg_tables;

SELECT viewname FROM pg_views
WHERE schemaname ='public'

PostgreSQL獲取資料庫中所有view名視圖

SELECT viewname FROM pg_views

WHERE schemaname ='public'

2. 查詢表結構

在psql狀態下查詢表結構 dtablename

SQL方式查看錶結構

SELECT a.attnum,

a.attname AS field,

t.typname AS type,

a.attlen AS length,

a.atttypmod AS lengthvar,

a.attnotnull AS notnull,

b.description AS comment

FROM pg_class c,

pg_attribute a

LEFT OUTER JOIN pg_description b ON a.attrelid=b.objoid AND a.attnum = b.objsubid,
pg_type t

WHERE c.relname = 'udoc_saldiscount'

and a.attnum > 0

and a.attrelid = c.oid

and a.atttypid = t.oid

ORDER BY a.attnum;

(1)postgresqlpython3擴展閱讀:

PostgreSQL存儲系統是由以下幾個子模塊所構成的:

1)頁面管理子模塊:對PostgreSQL緩沖區頁面的組織結構進行定義以及提供頁面操作的方法。

2)緩沖區管理子模塊:管理PostgreSQL的緩沖區,包括本地緩沖區和共享緩沖區。

3)存儲設備管理子模塊:資料庫記錄是存儲在存儲介質上的,存儲設備管理子模塊將屏蔽不同物理存儲設備(塊設備,流設備)介面函數的差異,向上層緩沖區管理子模塊提供統一的訪問介面函數。

4)文件管理子模塊:一般的操作系統對一個進程允許打開的文件數是有限制的,而PostgreSQL伺服器有些時候需要打開的文件數是很多的,因此PostgreSQL文件管理子模塊自身為了突破這個瓶頸,封裝了文件的讀寫操作。

Ⅱ python postgresql 哪個好

python操作資料庫PostgreSQL

1.簡述

python可以操作多種資料庫,諸如SQLite、MySql、PostgreSQL等,這里不對所有的資料庫操作方法進行贅述,只針對目前
項目中用到的PostgreSQL做一下簡單介紹,主要包括python操作資料庫插件的選擇、安裝、簡單使用方法、測試連接資料庫成功。

2.資料庫操作插件的選擇

PostgreSQL至少有三個python介面程序可以實現訪問,包括PsyCopg、PyPgSQL、PyGreSQL(PoPy已經整合在PyGreSQL中),三個介面程序各有利弊,需要根據實踐選擇最適合項目的方式。

推薦使用PsyCopg,對python開發框架的兼容性都很好,本文中我們只討論這個插件。

3.PsyCopg的下載

官網下載psycopg2-2.5.1.tar.gz:http://initd.org/psycopg/

本文使用windows系統開發,未使用官網版本,選擇psycopg2-2.4.2.win-amd64-py2.7-pg9.0.4-release.exe版,地址:http://vdisk.weibo.com/s/Cd8pPaw56Ozys

4.PsyCopg的安裝

直接exe,根據提示安裝即可.
5.PsyCopg的使用

py文件代碼:

__author__ = 'qiongmiaoer'
import psycopg2
# 資料庫連接參數
conn = psycopg2.connect(database="platoon", user="postgres", password="postgres", host="192.168.10.80", port="5432")
cur = conn.cursor()
cur.execute("CREATE TABLE test(id serial PRIMARY KEY, num integer,data varchar);")
# insert one item
cur.execute("INSERT INTO test(num, data)VALUES(%s, %s)", (1, 'aaa'))
cur.execute("INSERT INTO test(num, data)VALUES(%s, %s)", (2, 'bbb'))
cur.execute("INSERT INTO test(num, data)VALUES(%s, %s)", (3, 'ccc'))

cur.execute("SELECT * FROM test;")
rows = cur.fetchall() # all rows in table
print(rows)
for i in rows:
print(i)
conn.commit()
cur.close()
conn.close()

可參考psycopg官方文檔,介紹postgresql的使用

http://initd.org/psycopg/docs/usage.html#passing-parameters-to-sql-queries

6. 輸出結果

"C:\Program Files (x86)\Python275\python.exe" E:/PycharmProjects/psycopgPyCharm/xiaoyu/temp.py
[(1, 1, 'aaa'), (2, 2, 'bbb'), (3, 3, 'ccc')]
(1, 1, 'aaa')
(2, 2, 'bbb')
(3, 3, 'ccc')
Process finished with exit code 0

7.分析

在插件psyCopg安裝後,在python命令下import
psycopg2,即可使用psycopg2中的方法對資料庫,根據測試結果的輸出可以看到我們成功地連接到了資料庫,創建了名為test的table,
添加了三條數據,並成功讀取和輸出數據,最後將查詢到的數據輸出print出來。

ps:

項目環境

windows8

python2.7.5

pyCharm2.7.3(開發環境)

psycopg2-2.4.2(插件)

Ⅲ MySQL 和 PostgreSQL 哪個更適合做金融資料庫

金融資料庫的需求:

  1. 高效存儲和檢索大量時間序列數據和橫截面數據
    這兩個 資料庫都能存儲 時間序列數據, 但不是 最高效的。

  2. 支持存儲和檢索大段文本數據
    MySQL 和其他大部分關系型資料庫的文本檢索能力不強,用 LIKE 效率低,只能 硬匹配,PgSQL 提供全文檢索功能 ( PgSQL 數據類型 包含 Text Search Types ),這是 PgSQL 很好的特性,可以充當輕量級搜索引擎。

  3. 對R和Python有穩定高效的介面
    MySQL 和 PgSQL 這方面都沒問題, 但 如果是 Python3, PgSQL 的 psycopg2(毫無爭議的就是這個adapter) 穩定高效, 而MySQL的 Python3 adapter 比較多,相對沒有 Python2 的穩定或高效。

  4. 具有一定存儲和檢索非結構化數據(例如圖結構)的能力

    一般情況下 圖形結構不做轉換是很難直接存到資料庫的吧,我猜你說的非結構化數據 是樹形結構吧,可以用 JSON 格式存儲, MySQL 和 PgSQL 都提供 JSON 格式的存儲功能,不同的是 MySQL 5.7 才有這個特性(當前最新版是5.7,也就是說近一兩年才有的),而 PgSQL ( 當前最新版是9.6 ) 從 9.2 加入了 JSON Type, 這個特性至今已經相當成熟了。另外 JSON 格式不能滿足你的話, PgSQL 還提供 XML 格式。

  5. 有好用易上手的GUI

    Navicat 和 DataGrip 都支持 這兩個資料庫, 願意花錢這個不是問題。

  6. 提供遠程訪問功能

    遠程訪問,這么基本的功能肯定都有,就不用多說了吧

  7. 安全性高

    這個不好說了, 看你們 DBA 和運維的實力咯(不過 MySQL 人好招)

  8. 資料庫本身有能力處理復雜業務邏輯

    MySQL 相對比較適合 簡單粗暴的業務邏輯

    PgSQL 處理復雜業務邏輯 有優勢

    綜上, PgSQL 更適合。



Ⅳ python3.6安裝psycopg

今天打算寫一個定時寫入資料庫的Python測試程序,採用的資料庫是postgresql,因此需要安裝psycopg2。系統是windows的,安裝中也出了一些亂七八糟的問題,究其原因還是本人第一次在windows下面安裝python模塊,對此類問題沒有一個系統性的認識造成的。下面給出在此類安裝中可能存在的一些問題的解決方法:
python模塊的安裝包最重要的就是setup.py,一般來說setup.py文件的使用如下:
% python setup.py build #編譯
% python setup.py install #安裝
% python setup.py sdist #製作分發包
% python setup.py bdist_wininst #製作windows下的分發包
% python setup.py bdist_rpm
python是一種解釋性語言,假如包里全為python文件其實拷貝到LIb\site-packages下基本就可以,setup.py無非也就是執行相關內容,然而對於包括一部分是C語言編寫的安裝包就會出現問題了。linux下面基本不存在問題,因為gcc編譯支持非常好。在windows下面vc6,7,8,9,10,11,12,13之間兼容性都不好,而每一個Python版本對應一個vc的編譯環境。比如python2.7默認會去找vc9.0的編譯環境,但是現在裝vs2008的已經不多了吧。如果沒有VS90COMNTOOLS環境變數,安裝就會有一個unable to find vcvarsall.bat錯誤解決方法有幾個:
第一,安裝mingw,編譯時使用python setup.py build –compiler=mingw32;
第二,設置環境變數VS90COMNTOOLS,可以臨時設置SET VS90COMNTOOLS=VS100COMNTOOLS vc10,SET VS90COMNTOOLS=VS110COMNTOOLS vc11。。。以此類推;
對於psycopg2則還需要先安裝postgresql(似乎linux下可以只安裝postgres-devel),另外需要把其bin目錄設為環境變數,使其可以訪問libpq.dll及其依賴庫。設置了這些之後基本psycopg2就可以正常工作了,測試成功的標志就是import psycopg2 不出錯就表示安裝成功了。

熱點內容
ppt存儲路徑 發布:2025-02-01 06:55:06 瀏覽:115
aspx腳本 發布:2025-02-01 06:44:13 瀏覽:999
訪問策略更新 發布:2025-02-01 06:39:29 瀏覽:498
pythoneditplus 發布:2025-02-01 06:31:57 瀏覽:275
bmp轉png源碼 發布:2025-02-01 06:30:08 瀏覽:470
魔獸聯盟人多的伺服器是什麼 發布:2025-02-01 06:25:25 瀏覽:41
c語言字元串子串刪除 發布:2025-02-01 06:25:23 瀏覽:534
怎麼改電腦鎖屏密碼 發布:2025-02-01 06:16:55 瀏覽:472
存儲卡不能格式化怎麼辦 發布:2025-02-01 06:02:55 瀏覽:691
scratch編程網站 發布:2025-02-01 05:51:27 瀏覽:396