Question: how to export SQL which can be used in postgreSQL
seems that driver handle (escape) parameters itself instead of execute it as parameters in postgresql. Why doing that...... Peewee follows the DB-API convention / interface for executing queries. The SQL query uses placeholders for values, which are then interpolated by the driver however that needs to happen. Postgres (psycopg2) implements escaping as part of the library. Sqlite, however, prepares/compiles the statement *with* the placeholders, then binds the values separately using the `sqlite3_bind_XXX` interfaces. So it's up to the driver to do the appropriate thing for the database.

This is done for:

1. security. If you are binding your parameters, then you do not need to worry about sql injection attacks.
2. performance. Sqlite, for example, can reuse a compiled statement with a different set of parameters, avoiding the need to compile a statement over-and-over when only the parameters have changed. In fact I want to use `asyncpg` to execute my peewee query asynchronous in my asyncio web server, which send query and parameters directly to postgresql server instead of escape it by python. So it only accepts query with `$1`,`$2` as placeholder. And simply custom `Context.param` won't work in this situation.

Did that mean that there is no workaround now to get Postgresql compatible SQL string by `query.sql()`, only psycopg2 compatible? 

Which means I have to handle SQL string after peewee generated it, I'm also considering security issues
In using peewee to generate some SQL, but postgreSQL database use `%s` as a place holder which is not supported by postgresql server, any chance I get postgresql compatible SQL string (which use `%#` as placeholder?

Is it possible now?

If it's now supported now, any plan for it?

Thank you very much.