我正在制作库存软件。因为我需要制作一个自动生成的项目代码,以便用户可以使用该代码来选择该项目。我想知道如何制作这样的柱子和最好的方法。
我需要从“1000”
启动项目代码例如,我的表格中有以下列
ItemID int
ItemCode
ItemName
答案 0 :(得分:1)
请您尝试以下方式:
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
)
)
答案 1 :(得分:0)
如果GUID或自动增量列对您的企业来说不够,您必须创建一个功能来自动生成您的自定义代码
看看下面的内容:
http://www.sqlteam.com/article/custom-auto-generated-sequences-with-sql-server
答案 2 :(得分:0)
您可以使用Identity列并将其播种以从1000开始。
然而,您可能希望考虑编写一些业务逻辑来生成有意义的代码,我总是认为对于对您的用户有意义的数据项使用Identity列略显不好。它通常用于生成无意义的表主键。有可能(尽管不太可能)强制SQL Server为Identity列重新生成相同的值(例如,如果表被截断)。
答案 3 :(得分:0)
Create procedure [dbo].[randomnum] --exec [randomnum] '1000','9999',''
( --Set Minimun and Maximum value
@min bigint,
@max bigint,
@nvarrs bigint output
)
AS Declare
@nvarrc bigint,
@num bigint
set @nvarrc = @max
set @nvarrs =@min - 1
while @nvarrs < @min
Begin
set @nvarrs = (ceiling(rand() * @nvarrc))
Select @nvarrs RandomNumber
End
答案 4 :(得分:0)
我在某处看到了此建议,我正在使用它:太酷了! http://generatedata.com/