Problems with MySql id type with AUTO_INCREMENT

From: Tobias SCHOESSLER (Tobias.Schoessle..nvienna.org)
Date: Mon Aug 28 2006 - 05:22:22 EDT

  • Next message: Gentry, Michael \(Contractor\): "RE: temporal database generation"

    I use cayenne 1.2, MySql. AUTO_INCREMENT ids

    the type of the id field in the mysql schema is set to

    INT NOT NULL AUTO_INCREMENT UNIQUE

    I create an object of this table with cayenne and commit. I see the row
    inserted ok. When accessing the Id of the object via

          getObjectId().getIdSnapshot().get(this.FOLDER_UID_PK_COLUMN)

    in the same DataContext the type of the Object retruned is a Long. (Though
    I would have expected it to be an Integer from the MySql jdbc
    documentation)

    When I use a fresh DataContext and retrieve the same row the id object
    returned by

          getObjectId().getIdSnapshot().get(this.FOLDER_UID_PK_COLUMN)

    seems to be an Integer ?

    I tried to set the type to

    INT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE

    which is supposed to be of Long type from the jdbc type documentation of
    MySql.

    to force the id object always to be a Long but cayenne still returns an
    Integer when reading from the db.

    any ideas?

    thanks



    This archive was generated by hypermail 2.0.0 : Mon Aug 28 2006 - 05:22:53 EDT