Subject: Re: Display Bytea field

From: "Daniel Verite" <[email-masked]>
Date: Fri, 10 Jan 2025 13:49:40 +0100

Andy Hartman wrote:

> How thru a simple query can I make sure data matches and I can display it
> 
> On Thu, Jan 9, 2025 at 3:16 PM Andy Hartman <[email-masked]> wrote:
> 
> > I have migrated over a Table from Mssql that had an Image column I now
> > have it in Postgres

Within psql, the bytea field can be copied into a large object
with lo_from_bytea() [1], and then the large object exported
into a local file with \lo_export [2]

Alternatively, you could compare image checksums before and
after moving them into postgres. The advantage is that you
don't need to export or view any file, and you compare globally
all your images. If the checksums are identical, the data are identical.
On the MSSQL side, checksums can be computed with hashbytes()
as suggested in this stackoverflow answer: [3]
On the postgres side, use functions like md5() or sha256()
directly on the bytea column.

[1] https://www.postgresql.org/docs/current/lo-funcs.html

[2]
https://www.postgresql.org/docs/current/app-psql.html#APP-PSQL-META-COMMAND-LO-EXPORT

[3] https://stackoverflow.com/a/33256990/

Best regards,
-- 
Daniel Vérité
https://postgresql.verite.pro/
Twitter: @DanielVerite

---

From: Ron Johnson <[email-masked]>
Date: Fri, 10 Jan 2025 09:39:10 -0500

On Fri, Jan 10, 2025 at 7:49 AM Daniel Verite <[email-masked]>
wrote:
[snip]

> directly on the bytea column.

This is what I did when migrating Oracle xLOB columns to bytea.  Had to use
upper(md5()).

I didn't suggest this earlier, since I don't know the details of MSSQL's
Image data type.

-- 
Death to <Redacted>, and butter sauce.
Don't boil me, I'm still alive.
<Redacted> lobster!