Restriction on comments
The following documentation comment has been logged on the website:
Page: https://www.postgresql.org/docs/15/sql-comment.html
Description:
I've recently been converting some DML which was intended for BigQuery to
use PostgreSQL 14. Using a python client (using sqlalchemy and the
postgresql+psycopg2 driver), I had successfully created a table and was
trying to add comments to the columns. All of this was previously done in a
single statement on BigQuery, but requires separate CREATE TABLE and COMMENT
ON COLUMN statements for PostgreSQL.
For one of the comment statements I received this error: "dict is not a
sequence". It turns out the culprit was that one of the comments had a '%'
character. I'm not familiar with restrictions on strings in PostgreSQL, but
it would be helpful to have a list of these.
On Fri, 21 Oct 2022 at 09:23, PG Doc comments form
<noreply@postgresql.org> wrote:
The following documentation comment has been logged on the website:
Page: https://www.postgresql.org/docs/15/sql-comment.html
Description:I've recently been converting some DML which was intended for BigQuery to
use PostgreSQL 14. Using a python client (using sqlalchemy and the
postgresql+psycopg2 driver), I had successfully created a table and was
trying to add comments to the columns. All of this was previously done in a
single statement on BigQuery, but requires separate CREATE TABLE and COMMENT
ON COLUMN statements for PostgreSQL.For one of the comment statements I received this error: "dict is not a
sequence". It turns out the culprit was that one of the comments had a '%'
character. I'm not familiar with restrictions on strings in PostgreSQL, but
it would be helpful to have a list of these.
This is likely not coming from PostgreSQL. Psycopg uses `%s` as a
placeholder. As a consequence, if you want to pass a literal `%`, you
have to escape it at `%%`.
See documentation at
https://www.psycopg.org/docs/usage.html#passing-parameters-to-sql-queries
-- Daniele