Sql 在自动生成的主标记键之前指定值

Sql 在自动生成的主标记键之前指定值,sql,sql-server,database,primary-key,auto-increment,Sql,Sql Server,Database,Primary Key,Auto Increment,我想用以下字段创建名为entries的表。条目_id和条目。将entry_id设置为数据类型为int的主键字段。但在生成主键之前,我希望主键的值为000开始计数。例如00010002等等,在数据库上,您的标识必须是一个不带填充的整数。如果需要填充,则在从db中提取值或在UI中显示值时,必须使用0填充 创建具有标识的表: CREATE TABLE employee ( id int IDENTITY(1,1), firstname varchar (20), middleinitial ch

我想用以下字段创建名为entries的表。条目_id和条目。将entry_id设置为数据类型为int的主键字段。但在生成主键之前,我希望主键的值为000开始计数。例如00010002等等,在数据库上,您的标识必须是一个不带填充的整数。如果需要填充,则在从db中提取值或在UI中显示值时,必须使用0填充

创建具有标识的表:

CREATE TABLE employee
(
 id int IDENTITY(1,1),
 firstname varchar (20),
 middleinitial char(1),
 lastname varchar(30)
);
要在0重新设定种子(如果需要),可以执行:


DBCC CHECKIDENT('databasename.dbo.yourtable',RESEED,0)

Int数据类型将忽略值左侧的任何零。如果希望值看起来像
001
002
,则需要使用字符数据类型(VARCHAR、NVARCHAR),如果这样说,最好使用1、2、3。。。整数值。更好的性能和更易于管理。您能在创建表时从头开始表达整个代码吗?显示了一个示例。显然,您需要使用自己的字段名和类型。似乎您没有理解我的意思,我的意思不是关于重新播种,而是关于例如,id为12将在12到来之前从000开始。将其设为00012当另一个插入发生时00013@blay这就是Identity关键字在CREATETABLE语句中的作用。另外,我之前说过不能在db中填充,在从db中提取值时需要填充。