2013-05-16 44 views
0

我想寫一個RDF圖並將其存儲在PostgreSQL上(使用Python的rdflib)。我通過打開我已經創建的商店並通過此商店打開圖形來完成此操作。這個過程似乎工作正常,我可以寫和查詢該圖。然而,每次我嘗試重新開店時,它都會殺死我以前寫的所有東西。這是我開商店:打開現有的PostgreSQL存儲

store = plugin.get('PostgreSQL', rdflib.store.Store)(identifier = db_id, configuration = configString)  

有沒有什麼地方在這條線,我需要把create = False什麼? 有沒有加載商店而不是使用plugin.get的方法?

+0

我不是一個真正的RDFLib用戶,但是有一位用戶在PostgreSQL RDF商店遇到了一些問題,他們在郵件列表中描述了一個問題。他的最終工作代碼似乎在[此Google羣組消息]中描述(https://groups.google.com/d/msg/rdflib-dev/KYde6ECzaSE/MBZdStD8F4gJ)。它有幫助嗎? –

回答

1

正如您已經注意到的,創建默認值爲True。您需要使用以下代碼打開商店以連接到現有商店。示例請參閱README和代碼@ joshua-taylor參考。

g = Graph('PostgreSQL', identifier=db_id) 
g.open(configString, create=False) 

RDFLib開發者現在更喜歡RDFLib-SQLAlchemy店,不維護單獨的PostgreSQL擴展。你應該考慮切換到RDFLib-SQLAlchemy。