比较 Oracle、Postgres 和 SQLite 中的 CLOB、BLOB 值

Comparing CLOB, BLOB values in Oracle, Postgres and SQLite

这涉及比较两个不同数据库架构中的 table。要求是遍历一组已知的 table 并确保两个模式中的 table 数据相同。目前我们正在 Oracle 上执行类似的操作,查询如下:

每个 table;

SELECT COUNT(*) FROM (SELECT * FROM SCHEMA1.MY_TABLE MINUS (SELECT * FROM SCHEMA2.MY_TABLE));

但是上面的查询在涉及到大对象时在oracle中有一个限制:

ERROR at line 1: ORA-00932: inconsistent datatypes: expected - got BLOB

显然,当涉及大型对象 detailed here 时,Oracle 中的所有集合操作都存在限制。它可以通过使用 DB 特定函数来克服,例如 dbms_lob.compare.

由于我对 Postgres 和 SQLite 的了解有限,所以我想知道;

在PostgreSQL/SQLite中,text/TEXTbytea/BLOB数据类型的行为就像较小的值一样,可以正常比较。