如何使用PostgreSQL生成自定義格式的ID?

如何使用PostgreSQL生成自定義格式的ID?

postgresql 生成自定義 id

在 postgresql 中,我們可以使用自增長的整數 id,但有時我們需要生成自定義格式的 id。本文將介紹如何生成兩種類型格式的 id。

自增長數字前綴

要生成以固定字符串為前綴,自增長數字為后綴的 id,可以使用以下代碼:

create table company(    id text primary key default concat('bg-', lpad(serial, 16, '0')) );

其中,serial 是 postgresql 內置的數據類型,用于生成自增長的整數序列。lpad() 函數將數字填充為固定長度,參數 16 表示填充到 16 位數,不足補 0。concat() 函數將字符串連接在一起。

隨機字母數字前綴

要生成以固定字符串為前綴,隨機字母數字為后綴的 id,可以使用以下代碼:

CREATE TABLE COMPANY(    ID TEXT PRIMARY KEY DEFAULT concat('bg-', random_string(16)) );

其中,random_string() 是自定義函數,用來生成指定長度的隨機字母數字字符串。

? 版權聲明
THE END
喜歡就支持一下吧
點贊12 分享