我正在尝试创建一个自定义主键,它是递增的,并且依赖于输入的分支。例如,如果我输入'MIAMI‘作为分支,ID将显示为MI0001,如果我输入'CALIFORNIA',它将显示CA0001,依此类推。我该怎么做呢?这是我到目前为止所得到的。
CREATE TABLE dbo.tblCompany
(ID INT IDENTITY(1,1) NOT NULL PRIMARY KEY CLUSTERED,
CompanyID AS 'MI-' + RIGHT('00000000' + CAST(ID AS VARCHAR(3)), 3) PERSISTED,
FirstName VARCHAR(30),
LastName VARCHAR(30),
Branch VARCHAR(100) NOT NULL
CHECK(Branch IN('MIAMI', 'CALIFORNIA', 'NEW YORK', 'SEATTLE'))
)发布于 2021-11-13 02:11:13
您必须使用INSTEAD OF INSERT触发器,并扫描目标表或为每个分支维护单独的SEQUECE对象。
所以这不值得去做,你也不应该去尝试。
https://stackoverflow.com/questions/69950862
复制相似问题