如何在SQL中获取自动生成号码

问题描述:

我在制作库存软件。在这我需要做一个自动生成的物品代码,以便用户可以使用该代码来挑选该物品。我想知道如何做出这样的贡献,最好的办法是做什么。如何在SQL中获取自动生成号码

我需要从“1000”

启动itemcode例如,我有我的表

ItemID int 
ItemCode 
ItemName 
+0

可能重复的[自动编号字段](http://*.com/questions/4670020/auto-number-fields) – Pondlife 2011-12-14 10:48:51

+0

有关类似的问题[在存储过程中检索SQL Server自动递增ID](http ://*.com/questions/831810/sql-server-retrieve-auto-incremented-id-inside-a-stored-procedure) – Vamsi 2011-12-14 10:49:47

以下几列如果GUID或自动增量列是不够的,你的业务,你有创建一个函数自动生成自定义代码

看看下面:

http://www.sqlteam.com/article/custom-auto-generated-sequences-with-sql-server

请您尝试以下的机智方式:

CREATE TABLE [dbo].[TargetTableName](
    [ItemID ] [int] IDENTITY(1000,1) NOT NULL, 
    [ItemCode] [nvarchar](50) NOT NULL, 
    [ItemName] [nvarchar](50) NOT NULL 
    CONSTRAINT [PK_TargetTableName] PRIMARY KEY CLUSTERED 
    (
     [ItemID ] ASC 
    ) 
) 

您可以使用Identity列,它的种子在1000

启动但是,您不妨考虑写一些业务逻辑来生成有意义的代码,我总是认为使用标识列作为对用户有意义的数据项的做法总是有些不好。它通常用于生成无意义的表主键。有可能(虽然不太可能)强制SQL Server为Identity列重新生成相同的值(例如,如果表被截断)。