I'm using libpq to read array values, and I noticed that sometimes the
values are returned in Binary and sometimes - in Text format.

1. Returned in Binary format:
   int formats[1] = { 1 }; // request binary format
   res = PQexec(conn, "SELECT rgField FROM aTable", 1, formats);
   assert(PQfformat(res, 0) == 1);  // this is OK

2. Returned in Text format:
   res = PQexec(conn, "SELECT ARRAY[1,2,3]", 1, formats);
   assert(PQfformat(res, 0) == 1);  // this fails???

This is not a big issue, I can parse the text representation of the array.
But I wanted to understand why Postgres returns data in Text format when
Binary was requested. Am I missing something?

Reply via email to