postgresql "TABLENAME" versus TABLENAME

From: Tore Halset (halse..vv.ntnu.no)
Date: Thu Jul 01 2004 - 15:32:27 EDT

  • Next message: McDaniel, Joe R.: "Views in reverse engineering?"

    Hello.

    I have a database created by a import/export tool called ogr2ogr. It
    creates tables and columns with captial letters as shown in the example
    below. I am having trouble mapping this in cayenne. Using "s in the
    Modeler makes the mapping xml file unparsable.

    Perhaps cayenne should use "s around every table name and field name
    for every query? Perhaps only for postgresql databases? This would make
    "TABLENAME" work, but will potensially break lots of old mapping files.
    Perhaps this can be solved by configuring the database or the jdbc
    driver?

    toretest=> create table "TABLENAME" ("FIELD" int);
    CREATE TABLE
    toretest=> \d "TABLENAME"
        Table "public.TABLENAME"
      Column | Type | Modifiers
    --------+---------+-----------
      FIELD | integer |

    toretest=> select * from TABLENAME;
    ERROR: relation "tablename" does not exist
    toretest=> select FIELD from "TABLENAME";
    ERROR: column "field" does not exist
    toretest=> select "FIELD" from "TABLENAME";
      FIELD
    -------
    (0 rows)

    Regards,
      - Tore.



    This archive was generated by hypermail 2.0.0 : Thu Jul 01 2004 - 15:32:32 EDT