我想知道如何做一些與我在 SQL Server 中使用下表的“代碼”列所做的相同的事情,并在 PostgreSQL 中實作它。
CREATE TABLE test(
id INT IDENTITY(1,1) NOT NULL,
code AS ('P' RIGHT('0000' CONVERT(VARCHAR, id), (4)))
);
uj5u.com熱心網友回復:
Postgres 使用符合 SQL 標準的標識列。所以identity(1,1)行不通。
生成的列可以以類似的方式完成。可以使用多個零填充數字lpad()
CREATE TABLE test
(
id INT generated always as identity not null,
code text generated always AS ('P'||lpad(id::text, 4, '0')) stored
);
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/519434.html
上一篇:Elixir,phoenix,ecto:無法將資料添加到我的表中
下一篇:JPA中的級聯洗掉失敗
