the problem is, that the second sql produces more than one row. To be exactly the amount of select count(*) from acteursenc rows, with 'Michael Sweeney' as value in BB. Perhaps you have a unique key on nomacteur?!
I could help further, if i know what you want to do with your query. if nuacteur is a pk, use a sequence!!!!! if two users send this query almost at the same time, you'll get two times the same pk. That's because of oracles locking mechanism: Read does not block read. read does not block write. write does not block read. write blocks write on the same column. if someone inserts a row with your statement, and hasn't commited his transaction, and someone else inserts a row with your statment before he has commited, then the two will get the same results for max(id)+1. A sequence will never give the same result and is easy to use. and for your query, wouldn' this be easier: insert into acteursenc (nuacteur, nomacteur) values (S_ACTEURSENC.NEXTVAL, 'Michael Sweeney') please explain what you want to do. Michael "Michael Sweeney" <[EMAIL PROTECTED]> schrieb im Newsbeitrag [EMAIL PROTECTED]">news:[EMAIL PROTECTED]... > My following query : > > insert into acteursenc (nuacteur,nomacteur) > (select AA, BB from > (select max(nuacteur)+1 AA from acteursenc), > (select 'Michael Sweeney' BB from acteursenc))" > > produces an ORA-00001: unique constraint error. > > The primary key is nuacteur, but by setting AA to max(nuacteur)+1 I should > be getting a new key that is unique, however it does not seem that way. > > What am I doing wrong here? > > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php