首页 > 解决方案 > 如何在 mvc 中自定义我的主键值

问题描述

Staff Info我想为我的数据库自定义主键值。SQL Server 会自动生成一个StaffID(PK),从 1、2、3..... 等开始。

但我不希望这样,我可以将它设置为生成StaffID(PK)例如 ST20001 或 ST01 而不是 1、2、3?

标签: sql-serverasp.net-mvc

解决方案


我不明白为什么需要将其存储在表中。

CREATE TABLE dbo.Staff
(
  StaffID int IDENTITY(1,1) PRIMARY KEY,
  StaffIDForDisplay AS ('ST' + RIGHT(REPLICATE('0',9) + CONVERT(varchar(11), StaffID)))
);
GO

INSERT dbo.Staff DEFAULT VALUES;
GO 3

SELECT * FROM dbo.Staff;

结果:

StaffID    StaffIDForDisplay
=======    =================
1          ST0000000001
2          ST0000000002
3          ST0000000003

您可以对视图执行类似操作,或者您可以ST0000...在需要时在客户端简单地添加/删除。


推荐阅读