簡體   English   中英

將所有Blob從sqlite導出到文件

[英]Exporting all blobs from sqlite to a files

使用此命令:

sqlite3 my.db "SELECT writefile('object0.jpg', MyBlob) FROM MyTable WHERE id = 1"    

我可以將存儲為blob的圖像保存在數據庫的表中。
如何更改此設置,以便保存所有圖像而不是僅保存1張?

使用SQL字符串串聯( || )構造文件名:

sqlite3 my.db "SELECT writefile('object' || id || '.jpg', MyBlob) FROM MyTable"   

如果可以選擇兩步,天真的解決方案,則可以執行以下操作:

sqlite3 my.db "SELECT id from MyTable" > /tmp/id.list

獲取所有ID的列表,然后

cat /tmp/id.list | while read id; do echo SELECT writefile\(\'object$id.jpg\', MyBlob\) FROM MyTable WHERE id = $id\;; done | sqlite3 my.db

用於創建和執行用於存儲所有Blob的命令。

暫無
暫無

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

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