自动递增非标识字段

时间:2014-05-22 00:52:13

标签: sql sql-server

是否可以在表格中自动增加未定义为Primary Key的字段?

假设我在表格中有三个字段。其中一个是Primary KeyIDENTITY(1,1)设置。

第二个字段是int类型,我希望在名为column_3的第三个字段上使用INSERT语句自动增加。

例如:INSERT INTO table_name(column_3) values('something')

我可以轻松地为此添加触发器,但我想知道是否有一种方法可以在没有触发器的情况下执行此操作。

2 个答案:

答案 0 :(得分:0)

您可以使用计算列执行此操作,但它始终与您的IDENTITY列直接相关。

您也可以在SQL Server 2012或更高版本中使用SEQUENCE:http://technet.microsoft.com/en-us/library/ff878058.aspx

但是整个概念对我来说似乎很奇怪。

答案 1 :(得分:0)

我认为我们可以根据您的目的创建一个表格

CREATE TABLE [LUName]
(
id INT NOT NULL IDENTITY(1,1) PRIMARY KEY,
Name CHAR(25),
EmpID AS id + 100,
InsertTS DATETIME
)

INSERT脚本如下所示。

INSERT INTO [LUName] VALUES
('Bless',GETDATE()),('Sus',GETDATE()),('Sani',GETDATE()),('Sumi',GETDATE())

结果数据如下所示。

SELECT * FROM [LUName]

enter image description here