簡體   English   中英

如何在python對象中存儲SQL數據庫,並在對象中執行查詢?

[英]how to store a SQL-database in a python object, and perform queries in the object?

我有一個很大的postgrSQL數據庫。 我想以某種方式將完整的數據庫存儲在python對象中,該對象的形式/結構將反映數據庫之一。 即我想像一個*對象數據庫,它具有.tables屬性,其中一種對象是“ table”列表,而一個表對象具有“ list_of_keys”屬性(列名稱列表)和“ rows”屬性,反映數據庫中相應表的所有行。

現在,我需要指出主要重點是:我希望能夠在數據庫對象中執行搜索,並且使用與在相應SQL數據庫中使用的完全相同的SQL Synthax。 因此,類似database.execute(“ SELECT * FROM .....”)的地方,我重復說,“數據庫”是一個純python對象(已填充來自SQL數據庫的數據,但現在與它無關) )。

我的目標是:我希望能夠在如上所述的SQL數據庫或python對象上應用相同的算法,而無需更改代碼。 因此,我想像是讓“數據庫”成為常用的數據庫連接器/游標(例如,與psycopg類似)或我所描述的python對象,以及同一段代碼database.execute(“ SELECT BLABLABLA”)在兩種情況下都可以工作。

有任何已知的模塊允許這樣做嗎?

謝謝。

可能會有些復雜,但是請看一下SQLite的內存存儲:

import sqlite3
cnx = sqlite3.connect(':memory:')
cnx.execute('CREATE TABLE ...')

SQL語法有一些區別,但是基本的東西可以正常工作。 根據您的數據,這可能還需要占用大量RAM。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM