如何通过 SQL 插入增量值
Posted
技术标签:
【中文标题】如何通过 SQL 插入增量值【英文标题】:How to insert an increment value via SQL 【发布时间】:2013-08-03 11:33:21 【问题描述】:我的数据库中有一个列。我如何通过插入插入一个递增的数字,以便它填充每一行?
【问题讨论】:
为该列添加自动增量 希望您能使用 [Increment Sequence Number on Sql Insert][1] [1] 获得有用的解决方案之一:***.com/questions/15530222/… 【参考方案1】:你可以去表的设计器添加一个新的列,然后到列的属性选项卡并设置
身份规范
身份:是的 身份增量:1 身份种子:1标识增量设置每次插入行时将添加的数字。如果是 10,那么你的 id 应该是 10、20、30。
身份种子是您可能需要添加的偏移量(这是出现的第一个数字)如果是 10,那么您的第一个 ID 将是 10。
【讨论】:
【参考方案2】:使用身份列
假设您希望 Column Id 自动增加一行,将其定义为标识
ID INT IDENTITY (1,1)
第一个 1 是起始值,第二个 1 是种子,它表示增量是哪个整数
在这种情况下,值将从 1 开始,每次插入新行时递增 1。
如果需要任何进一步的帮助,请告诉我
【讨论】:
【参考方案3】:创建新表时,将数据类型字段设置为 int 并取消选择该列的 Allow Nulls。
然后,在 Properties 列中,展开 Identity Specification 并将 (Is Identity) 更改为 Yes。
默认情况下,标识增量应设置为 1。
【讨论】:
【参考方案4】:为要增加值的列设置标识种子
Alter Table Names Add Id_new Int Identity(1, 1) Go
Alter Table Names Drop Column ID Go
Exec sp_rename 'Names.Id_new', 'ID', 'Column'
【讨论】:
【参考方案5】:在创建表时创建该列标识,该表将为每一行自动增加该列。您不必进行显式插入。
【讨论】:
【参考方案6】:例如为该列创建自动增量
CREATE TABLE table_name
(
id int NOT NULL IDENTITY (1, 1),
name varchar(50) NULL
) ON [PRIMARY]
在上面的示例中,id
列是自动递增的。每次插入后,其值将增加 1。
如果您想稍后更改该增量编号,请检查
Reset AutoIncrement in SQL Server after Delete
【讨论】:
以上是关于如何通过 SQL 插入增量值的主要内容,如果未能解决你的问题,请参考以下文章
如何在单个查询(sql server)中插入1条记录后检索自动增量值
如何检索 MS-Access 中的最后一个自动增量值,例如 Sql Server 中的 @@Identity