2012-05-12 85 views
0

我有這樣一個XML文件:有沒有辦法使用psycopg2 copy_from批量加載XML?

<Library> 
    <Book id="123"> 
    <Title>Python Does Everythig</Title> 
    <Author>Smith</Author> 
    </Book> 

    <Book id="456"> 
    <Title>Postgres is Neat</Title> 
    <Author>Wesson</Author> 
    </Book> 
</Library> 

,我已經得到了使用XSL將XML轉換成管道分隔格式的可愛的小Python程序,它使用psycopg2.copy_from然後批量加載,創建每本書一個記錄。一切都很好。

但我還想將用於創建書記錄的實際XML添加到書本記錄本身。換句話說,我希望我的書表,看起來像:

create table book (
    id  integer  not null primary key, 
    title varchar(100) not null, 
    author varchar(100) not null, 
    xml_data xml   not null 
); 

如果我使用SQL插入行,這是很簡單:我只想用XMLPARSE (CONTENT ?)

當使用copy_from時,有沒有辦法做到這一點?

+0

我甚至會想方設法在我的XSL表格中獲取當前節點的XML,如果有人知道(value-of似乎去掉XML標籤,這是有道理的)。如果我可以在第一遍中存儲XML,則可以執行後處理來創建結構化值。 –

回答

0

Copy_from包裝PostgreSQL的大容量COPY語句,這不支持(通過這種方式支持csv)。

說實話,我只是解析你的應用程序中的XML,然後將數據發送到數據庫。

相關問題