0
有什麼辦法可以創建一個半序列的列? 這是想象,我有如下表:如何創建一個基於Postgresql中的序列自動填充的列?
create table item (
item_number varchar(10) PRIMARYKEY,
)
,但我想列到ITEM_NUMBER是這樣的:ITEM001,ITEM002,ITEM003 .... 所以我想這個詞項,然後一類的之後的序列。
有什麼辦法可以創建一個半序列的列? 這是想象,我有如下表:如何創建一個基於Postgresql中的序列自動填充的列?
create table item (
item_number varchar(10) PRIMARYKEY,
)
,但我想列到ITEM_NUMBER是這樣的:ITEM001,ITEM002,ITEM003 .... 所以我想這個詞項,然後一類的之後的序列。
使用序列具有缺省值:
create sequence item_number_seq;
create table item
(
item_number varchar(10) primary key default 'ITEM'||to_char(nextval('item_number_seq'), '00000')
);
但存儲爲所有行相同恆定值幾乎沒用。只需使用常規序列並在顯示這些值時添加該常數。或者使用一個視圖來做到這一點。
做它在查詢時或在表示層:
create table item (item_number serial primary key);
select 'ITEM' || to_char(item, '999')
from item
創建一個插入觸發器,並使用一個序列。 –