The syntax that I've seen is:
insert into KEY_ITEM (key_item_id,keyname) values
(select max(key_item_id)+1,'?' FROM KEY_ITEM);
Just out of curiousity, why not make key_item_id a SERIAL field? That way,
if you don't specify a value, it gets the next value from the associated
sequence.
On Tue, 22 Aug 2000, BogdanKRomski wrote:
> Hello
> 
> I'm using the Postgresql 6.5 and i try to perform statement
> 
> INSERT into KEY_ITEM (key_item_id,keyName) values(((SELECT
> MAX(key_item_id) FROM KEY_ITEM)+1),?)
> 
> and I get the message :
> 
> Error: ERROR:  parser: parse error at or near "select"
> 
> I'm not sure but  part  "(SELECT MAX(key_item_id) FROM KEY_ITEM)+1)" of
> statement does't work
> 
> thanks for all informations
> 
> Bogdan Kromski
> 
> ps. on Oracle and Sybase it is working correct
>