【问题标题】:How can I select and insert BLOB between different databases using python?如何使用 python 在不同数据库之间选择和插入 BLOB?
【发布时间】:2012-08-02 02:12:04
【问题描述】:

我有一些包含图像数据类型的 SQL Server 表。 我想让它以某种方式在 PostgreSQL 中可用。我是一名 python 程序员,所以我对这个主题有很多了解。帮忙?

【问题讨论】:

  • 你试过什么?你找到合适的司机了吗?安装 pymssql (code.google.com/p/pymssql) 和 psycopg2 (initd.org/psycopg) 将是您的第一步。
  • 首先要决定是否要将图像存储在bytea 列中,使用“大对象”功能(视为BLOB 数据),还是使用外部文件数据库中的引用。我通常使用bytea 列,但每个值超过 10MB 或 20MB,这往往会变得笨拙。
  • Mike Steder:我有 pymssql 和 psycopg2。我一般都有使用 postgres 和 python 的经验。图像非常小。不超过 100KB。我会看看 bytea 列。谢谢

标签: python sql-server postgresql blob


【解决方案1】:

首先需要了解的是,db 级别的接口可能会有所不同。您最好的选择是为 blob 编写一个抽象层(并可能将其开源以供您想要支持的数据库使用)。

在 PostgreSQL 方面,您需要确定是否要使用 bytea 或 lob。这些是非常不同的,并且具有不同的功能和限制。如果你有进取心,你至少可以在规范中建立支持来选择它们。一般来说,bytea 更适合较小的文件,而 lob 的管理开销更大,但它既可以支持更大的文件,也可以支持分块、查找等。

【讨论】:

    猜你喜欢
    • 2019-06-26
    • 2019-11-02
    • 2013-09-26
    • 1970-01-01
    • 1970-01-01
    • 2018-02-10
    • 2019-06-25
    • 1970-01-01
    • 2018-04-22
    相关资源
    最近更新 更多