gpt4 book ai didi

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

转载 作者:搜寻专家 更新时间:2023-10-30 22:30:54 26 4
gpt4 key购买 nike

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

对于每个表;

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

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

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

  • 在涉及 LOB 值时,在 Postgres 和 SQLite 中使用联合、减号或相交等集合运算符是否存在类似的限制?
  • 如果有限制,是否有任何数据库特定函数可用于 LOB 比较?

最佳答案

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

关于database - 比较 Oracle、Postgres 和 SQLite 中的 CLOB、BLOB 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43740319/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com