尽管我可以显示ERROR: large object 16709 does not exist
does存在,但在尝试删除大对象16709
时,Postgres 10出现错误。我不知道它是否相关,但是大对象是在Python 3上使用pyscopg2
创建的。
编辑:我确认我仍然可以从数据库中获取数据,并且它是正确的。我只是无法删除它。
tagger1=# select l.oid from pg_largeobject_metadata l where l.oid = 16709;
oid
-------
16709
(1 row)
tagger1=# select count(1) from pg_largeobject where loid = 16709;
count
-------
747
(1 row)
tagger1=# select lo_unlink(16709) from pg_largeobject;
ERROR: large object 16709 does not exist
仅省略FROM
子句:
SELECT lo_unlink(16709);
问题是您的语句尝试对pg_largeobject
中的每一行都运行此语句,但是第一次执行后,大对象已经消失了。