Попробуйте и посмотрите;удалите завершающие "," после "варьирования" на втором и третьем, чтобы они выполнялись, выполните каждое из них, затем выполните:
\d testtable
после каждого, и вы сможете увидеть, что происходит.Затем бросьте стол и переходите к следующему.Это будет выглядеть так:
Column | Type | Modifiers
--------+-------------------+--------------------------------------------------------
id | integer | not null default nextval('testtable_id_seq'::regclass)
title | character varying |
Indexes:
"id" PRIMARY KEY, btree (id)
Column | Type | Modifiers
--------+-------------------+--------------------------------------------------------
id | integer | not null default nextval('testtable_id_seq'::regclass)
title | character varying |
Indexes:
"testtable_pkey" PRIMARY KEY, btree (id)
Column | Type | Modifiers
--------+-------------------+-----------
id | integer | not null
title | character varying |
Indexes:
"testtable_pkey" PRIMARY KEY, btree (id)
Первый и второй почти идентичны, за исключением того, что созданный первичный ключ имеет разные имена.В-третьих, последовательность больше не заполняется при вставке в базу данных.Сначала необходимо создать последовательность, а затем создать таблицу следующим образом:
CREATE TABLE testtable
(
id integer PRIMARY KEY DEFAULT nextval('testtable_id_seq'),
title character varying
);
Чтобы получить нечто, похожее на второе.Единственный плюс в том, что вы можете использовать директиву CACHE для предварительного выделения некоторого количества порядковых номеров.Это может быть достаточно большой ресурс ресурсов, что вам нужно, чтобы снизить конкуренцию.Но вам нужно будет делать несколько тысяч вставок в секунду, а не в минуту, прежде чем это произойдет.