Hi, > > CREATE TABLE competenza ( > > competenza varchar(30) NOT NULL default 'comp-06-', > > id_competenza int unsigned not null auto_increment, > > descrizione varchar(100), > > PRIMARY KEY (competenza, id_competenza) > > ) > > > > Since your PRIMARY KEY is a combination of 2 fields (competenza + > > id_competenza ), each competenza value will have it's own auto increment > > (id_competenza ) sequence. So id_competenza won't be unique, but the > > combination of competenza + id_competenza will be. > > > > > Thanks for your suggestion, but this would make my queries more complex, since > to get the id of a skill (italian is competenza) will require querying two > fields. > It's true that I can simulate sequences with a table with auto_increment, but > this means I need to insert a record before in such table to get the new id > and then insert in my competenza table. This would require a transaction and > will result even more complex than the above, I guess. > > Any other idea?
Well, transactions are never a bad idea :-) What I would suggest to simulate sequences, is a Stored Function that returns the new value. Then use that function to retrieve the new value beforehand and use that when creating a new row in your table. Martijn Tonies Database Workbench - tool for InterBase, Firebird, MySQL, NexusDB, Oracle & MS SQL Server Upscene Productions http://www.upscene.com My thoughts: http://blog.upscene.com/martijn/ Database development questions? Check the forum! http://www.databasedevelopmentforum.com -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]