I don't believe InnoDB has anything to do with it.  When the table was
created, the primary key (oid) was declared to be an AUTO_INCREMENT
field.

/dev/mrg


-----Original Message-----
From: Borut Bolcina [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, June 21, 2006 11:19 AM
To: [email protected]
Subject: Re: MySql auto generated PK


Log file at table creation time says:

CREATE TABLE foo.bar (cir FLOAT NULL, content_type VARCHAR(100) NULL, 
custom_last_modified DATE NULL, header_etag VARCHAR(100) NULL, 
header_last_modified VARCHAR(100) NULL, *oid INT NOT NULL 
AUTO_INCREMENT*, title VARCHAR(500) NULL, type VARCHAR(30) NOT NULL, url

VARCHAR(1000) NOT NULL, verified BIT NOT NULL, PRIMARY KEY (oid)) 
ENGINE=InnoDB

Does InnoDB has something to do with the problem?

-Borut

Gentry, Michael (Contractor) pravi:
> http://dev.mysql.com/doc/refman/5.0/en/example-auto-increment.html
>
> Check to see if your DB is using auto-increment ...
>
>
> -----Original Message-----
> From: Gentry, Michael (Contractor)
[mailto:[EMAIL PROTECTED]
>
> Sent: Wednesday, June 21, 2006 9:13 AM
> To: [email protected]
> Subject: RE: MySql auto generated PK
>
>
> I didn't keep up with the MySQL stuff too much, but I believe support
> was added (sometime in 1.2) for auto-increment columns.  The
> isGenerated="true" is what controls it, I believe.  Assuming my memory
> is working, that attribute tells Cayenne to not use the
AUTO_PK_SUPPORT
> table and instead rely on MySQL to auto-increment the value and return
> it to Cayenne.  
>
> /dev/mrg
>
>
> -----Original Message-----
> From: Borut Bolcina [mailto:[EMAIL PROTECTED] 
> Sent: Wednesday, June 21, 2006 2:53 AM
> To: [email protected]
> Subject: MySql auto generated PK
>
>
> Is something broken or am I missing something in my setup, but when 
> inserting, Cayenne is generating PK instead of using AUTO_PK_SUPPORT.
>
> I use Cayenne 1.2RC1, mysql-connector-java-3.1.13
> This is mapping:
> <db-attribute name="oid" type="INTEGER" isPrimaryKey="true" 
> isGenerated="true" isMandatory="true"/>
>
> and this is how I generate the tables
> MySQLAdapter mysqlDbAdapter = new MySQLAdapter();
> mysqlDbAdapter.setSupportsFkConstraints(true);
> mysqlDbAdapter.setSupportsGeneratedKeys(true);
> generator = new DbGenerator(mysqlDbAdapter, dataMap);
> generator.setShouldCreatePKSupport(true);
> generator.setShouldCreateFKConstraints(true);
> generator.setShouldDropTables(false);
> generator.runGenerator(dataSource);
>
> AUTO_PK_SUPPORT table gets generated and correctly populated with
table 
> names and initial value 200.
>
> When inserting records, Cayenne inserts records with PK 1,2,3,... 
> ignoring AUTO_PK_SUPPORT. No SELECT FROM AUTO_PK_SUPPORT happens in
log 
> files.
>
> What did I miss. I think this worked months ago when exercising
Cayenne 
> with some simple examples.
>
> Cheers,
> Borut
>
>   

Reply via email to