querybuilder icon indicating copy to clipboard operation
querybuilder copied to clipboard

Allow JSON operators ?, ?| and ?& for PostgreSQL

Open toburger opened this issue 4 years ago • 1 comments

There exist some JSON specific operations in PostgreSQL that begin with the questionmark: https://www.postgresql.org/docs/9.5/functions-json.html

Currently it is only possible to write queries that involve JSON operations in a RawQuery. But they in turn clash with the placeholder for the parameter ?.

For example when using ?| in a query you get an System.IndexOutOfRangeException: Index was outside the bounds of the array. because it thinks ? is a placeholder.

It would be nice if there exists a possibility to escape the ? by a \ as it is already possible/necessary for { and } (which are also used in JSON operations, e.g data#>>'{Some,Path,To,Field}').

Another, even better, solution would be to have special query methods, that are especially used for JSON queries. I know this is a PostgreSQL specific problem so maybe this could be solved with something which is only enabled when using engine specific queries?

Related: #235 #346 #358

toburger avatar Mar 31 '20 18:03 toburger

The following pull request can be used to fix this issue: #592

toburger avatar Aug 02 '22 10:08 toburger