Couldn't it be implemented by calling a engine-dependent method like
sql_quote(name), which in other engines would by default return the
unquoted string, but return the quoted name in mysql and postgres?

Greets.

On 27 jul, 22:16, Massimo Di Pierro <[email protected]>
wrote:
> Yes. The dal was rewritten to allow this. The reason it was never
> implemented fully is that I cannot find documentation about this for
> all supported db engines. Implementing this only for mysql and pgsql
> is a pain.
>
> On Jul 27, 2:34 pm, Álvaro J. Iradier <[email protected]> wrote:
>
>
>
>
>
>
>
> > Hi,
>
> > migrating my application to Postgres, I've been hit by the "user"
> > reserved keyword problem previously commented 
> > onhttp://groups.google.com/group/web2py/browse_thread/thread/f23c03ff81....
>
> > According to PostgreSQL 
> > documentation,http://www.postgresql.org/docs/8.2/static/sql-syntax-lexical.html,
> > section 4.1.1:
>
> > -----
>
> > There is a second kind of identifier: the delimited identifier or
> > quoted identifier. It is formed by enclosing an arbitrary sequence of
> > characters in double-quotes ("). A delimited identifier is always an
> > identifier, never a key word. So "select" could be used to refer to a
> > column or table named "select", whereas an unquoted select would be
> > taken as a key word and would therefore provoke a parse error when
> > used where a table or column name is expected. The example can be
> > written with quoted identifiers like this:
>
> > UPDATE "my_table" SET "a" = 5;
>
> > -----
>
> > Shouldn't web2py use this syntax by default in order to avoid keyword
> > collisions? Probably there is a similar syntax for other DB engines as
> > well (for example, quote using [name] in SQL Server, etc.). Is there
> > something against this?
>
> > Thanks.

Reply via email to