Re: Equivalent for AUTOINCREMENT?
| От | D. Dante Lorenso |
|---|---|
| Тема | Re: Equivalent for AUTOINCREMENT? |
| Дата | |
| Msg-id | 490B41E0.9060700@lorenso.com обсуждение исходный текст |
| Ответ на | Equivalent for AUTOINCREMENT? (Michelle Konzack <linux4michelle@tamay-dogan.net>) |
| Список | pgsql-general |
Michelle Konzack wrote:
> I have a table where I have a serialnumber which shuld be increased be
> each INSERT. I know I can use max() to get the highest number, but how
> can I use it in a INSERT statement?
>
> There was a message for some month a message describing it on this list
> but I do not find the message anymore...
You want to use 'SERIAL' or 'BIGSERIAL' data type. Then, for your
insert statement, use the 'RETURNING' clause like this:
CREATE TABLE mytable (
mypkey SERIAL NOT NULL,
somecol VARCHAR(200)
);
INSERT INTO mytable (somecol)
VALUES ('this is a test)
RETURNING mypkey;
You'll get your insert statement to return the integer value generated
by the SERIAL sequence.
These features are way more powerful than AUTO_INCREMENT.
-- Dante
>
> Thanks, Greetings and nice Day/Evening
> Michelle Konzack
> Systemadministrator
> 24V Electronic Engineer
> Tamay Dogan Network
> Debian GNU/Linux Consultant
>
>
--
----------
D. Dante Lorenso
dante@lorenso.com
В списке pgsql-general по дате отправления: