Re: Adding Records With SERIAL Primary Key
От | Scott Marlowe |
---|---|
Тема | Re: Adding Records With SERIAL Primary Key |
Дата | |
Msg-id | 1115140369.13303.1491.camel@state.g2switchworks.com обсуждение исходный текст |
Ответ на | Adding Records With SERIAL Primary Key (Rich Shepard <rshepard@appl-ecosys.com>) |
Ответы |
Re: Adding Records With SERIAL Primary Key
|
Список | pgsql-general |
On Tue, 2005-05-03 at 11:58, Rich Shepard wrote: > I may have missed this in the docs; if so, please tell me where to find the > answer there. If not, I still need to learn how to resolve this situation. > > The database schema has been designed and the tables are ready to be > created. Once they exist, I want to load data into the tables in batch mode > (rather than one at a time, manually). The core table has a SERIAL data type > field as the primary key. How is this field assigned values? Then, how do I > load the related tables so they reference the proper records? The normal way it's added is with a DEFAULT clause. This means it can be overridden by inserting it by hand. Changing this to an after trigger can ensure that it is always inserted no matter what the user app tries to do. When loading in data using the copy command, one can set the columns to be copied, and the system will insert the serial value for you if you leave that column out of the list. If your data already has a value assigned, you can load those in, and then use setval() to set the value of the associated sequence.
В списке pgsql-general по дате отправления: