Мы решили перейти от OID
s в нашей базе данных PostgreSQL 9.0 и вместо этого использовать столбцы bytea
. Я пытаюсь скопировать данные из одного столбца в другой, но не могу найти правильный запрос. Это самое близкое, что я получил:
update user as thistable set pkcs_as_bytea = (select array_agg(mylargeobject.data) from
(select * from pg_largeobject where loid = thistable.pkcs12_as_oid order by pageno) as mylargeobject) where thistable.pkcs12 is not null
И это дает мне следующее сообщение об ошибке:
ERROR: column "pkcs_as_bytea" is of type bytea but expression is of type bytea[]
Какой тогда будет правильный запрос?
array_agg()
возвращает массив, поэтому сообщение об ошибке имеет смысл. Как вы думаете, почему вам нужно агрегировать байты там? - person a_horse_with_no_name   schedule 18.02.2011