2013-02-22 159 views
0

我正在寻找一种方法来从SQLite数据库中取得结果,选择模式的一部分,然后通过paramiko在远程机器上重新创建它,而无需本地文件或任何形式的远程文件的中间步骤这不是纯粹的SQLite数据库。远程写入SQLite数据库

本博客文章建立了一个很好的方式,潜在的得到我想要的架构的一部分,但我将不得不抛售这一个文件,然后事后通过远程脚本读入数据库:

http://blog.marcus-brinkmann.de/2010/08/27/how-to-use-sqlites-backup-in-python/

我知道的paramiko可以提供远程文件喜欢这样的对象:

f = self.sftp.open(path, 'wb') 
f.write(fileobj.read()) 
f.close() 

有什么办法来一些文件对象,StringIO的,或字节转换与SQLite的DB API中的一个,以提供一种方法结合起来去Eam预编译的SQLite数据库没有额外的文件写入主机或远程?

换句话说是这样的:

f = self.sftp.open(path, 'wb') 
conn = sqlite3.connection(f) 

回答

1

不是直接解决您的问题,但这是一个Web API是什么。构建一个类似REST的API可能是一个不错的选择。

由于您已经在python中,我会看看Django,它可以使用django-tastypie提供一个drop-ship API。 Django如果您使用已经存在的数据库模式进行操作,将会是一个不太需要的解决方案,尽管您可以使其工作。

您可能还想看看Pylons,这是比Django更通用/准系统的框架。全部取决于你的实际需求。