> Why would the auto_increment not work for you? The only case where you
> would have a problem is if the last record was deleted before mysql
> shutdown. If you are really concerned about this unique scenario,
> insert a dummy record before shutdown to guard against it and delete
> the dummy record after you start back up.
> 
Hmm, and what about a server crash?

> 
> On Tue, Aug 12, 2008 at 8:29 AM,  <[EMAIL PROTECTED]> wrote:
> > Hi all,
> >
> > I try to generate a unique id for each row in a Mysql-InnoDB Table.
> Because of many deletes I  can't use an auto_increment column.
> > After a Mysql restart, the next value for an auto_increment-column  is
> max(auto_increment-column)+1, and I need a really unique id.
> >
> >
> > My first solution looks like this:
> > I use a second table with an auto-increment-column, and add an insert
> trigger to the first table.
> > The insert trigger adds a row in the second table and uses  the
> last_insert_id() to get the unique value.
> > The (last) row in the second table will never be deleted.
> > Does anybody confirm with this solution?
> >
> > ###################################
> > drop table unique_id_messages_1;
> > create table unique_id_messages_1 (id bigint not null unique, subject
> text);
> >
> > drop table id_sequences_1;
> > create table id_sequences_1 (id bigint not null primary key
> auto_increment);
> >
> > drop trigger trg_unique_id_messages_1;
> >
> > DELIMITER |
> >
> > create trigger trg_unique_id_messages_1 BEFORE INSERT ON
> unique_id_messages_1
> > FOR EACH ROW BEGIN
> >  insert into id_sequences_1 values ();
> >  set NEW.id = (select last_insert_id());
> > END;
> > |
> > DELIMITER ;
> >
> > insert into unique_id_messages_1 (subject) values ("x1");
> > insert into unique_id_messages_1 (subject) values ("x2");
> > insert into unique_id_messages_1 (subject) values ("x3");
> > insert into unique_id_messages_1 (subject) values ("x4");
> > select * from unique_id_messages_1;
> > ###################################
> >
> >
> > Thanks in advance
> >
> > Rudi
> >
> >
> >
> > --
> > GMX startet ShortView.de. Hier findest Du Leute mit Deinen Interessen!
> > Jetzt dabei sein:
> http://www.shortview.de/[EMAIL PROTECTED]
> >
> > --
> > MySQL General Mailing List
> > For list archives: http://lists.mysql.com/mysql
> > To unsubscribe:   
> http://lists.mysql.com/[EMAIL PROTECTED]
> >
> >

-- 
Ist Ihr Browser Vista-kompatibel? Jetzt die neuesten 
Browser-Versionen downloaden: http://www.gmx.net/de/go/browser

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to