问题标签 [auto-increment]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - 你能在一个语句中访问 MySQL 中的自动增量值吗?
我有一个包含用户表的 MySQL 数据库。表的主键是“userid”,设置为自动递增字段。
我想做的是,当我将新用户插入表中时,使用与自动增量在不同字段“default_assignment”的“userid”字段中创建的相同值。
例如
我想要这样的声明:
所以我创建了用户“Barry”,“userid”生成为 16(例如),但我也希望“default_assignment”具有相同的值 16。
请问有什么办法可以实现吗?
谢谢!
更新:
感谢您的回复。default_assignment 字段不是多余的。default_assigment 可以引用 users 表中的任何用户。创建用户时,我已经有一个允许选择另一个用户作为 default_assignment 的表单,但是在某些情况下需要将其设置为同一用户,因此我的问题是。
更新:
好的,我已经尝试了更新触发建议,但仍然无法使其正常工作。这是我创建的触发器:
但是,当插入新用户时,default_assignment 始终设置为 0。
如果我手动设置用户 ID,则 default_assignment 确实设置为用户 ID。
因此,自动分配生成过程显然发生在触发器生效之后。
sql-server - 删除后在 SQL Server 中重置 AutoIncrement
我已经从 SQL Server 数据库的表中删除了一些记录。
表中的 ID 如下所示:
99 100 101 1200 1201...
我想删除后面的记录(ID > 1200),然后我想重置自动增量,以便下一个自动生成的 ID 为 102。所以我的记录是连续的,有没有办法在 SQL Server 中做到这一点?
sql - 没有自动增量字段的数据库上的自动增量字段
在 MS Sql Server 中很容易创建自动增量字段。在我的系统中,我停止对主键使用自动增量字段,现在我使用 Guid。太棒了,这种变化给我带来了很多好处。但在另一个非主键字段中,我确实需要实现“软自动增量”。这是因为我的系统是独立于数据库的,所以我在 c# 中以编程方式创建了 autoinc 值。
我想要关于没有自动增量的数据库上的自动增量字段的解决方案,您使用什么解决方案以及为什么?有一些关于这个的 Sql Ansi 声明?并直接从我的 c# 生成,是更好的解决方案吗?
PS:我知道select max(id)+1 from table它并不是真正的并发友好...
sqlite - 如何使用VB6在SQLite中返回AUTO INCREMENT列的值
我在 SQLite 中有一个表:
由于 EventTypeID 是一个整数和一个主键,它会自动使其成为一个自动递增的列,并且工作正常。
我想在表中插入一行并从 VB6 中获取新增加的值。
是否有一种自动方法来检索新创建的 EventTypeID 而无需发出另一个查询(从 EventType 中选择 max(EventTypeID))?
我似乎记得很久以前的VB6,有一种方法可以做到这一点。
sql - 具有增量整数列的 MSSQL Select 语句...不是来自表
如果可能,我需要一个 t-sql 查询,它从任意表返回值,还返回一个增量整数列,第一行的 value = 1,第二行的 value = 2,依此类推。
该列实际上并不驻留在任何表中,并且必须严格递增,因为 ORDER BY 子句可以对表的行进行排序,并且我希望增量行始终保持完美的形状......
提前致谢。
--EDIT 对不起,忘了说,必须在 SQL Server 2000 上运行
delphi - 如何在带有 BlackFish 的 DBx4 中使用整数自动增量字段?
我正在尝试将 dbx4 中的自动增量字段与黑鱼数据库一起使用我有一个简单的表结构:
在打开之前我正在做:
打开后:
如果我做:
或者,如果我在 DBGRID 中使用它,它会失败并出现错误:
“字段‘ID’必须有值”</p>
女巫应该已经生成了。
如果我运行 INSERT 查询,不管有没有“AutoGenerateValue := arAutoInc”行,它都可以正常工作。
我该如何克服这个问题?
sql - 重置自增列
我最近将项目添加到 ID 并且表格在传输过程中搞砸了,所以我从表格中删除了项目。在重新输入数据而不是从 1 开始的 ID 后,它现在从 332 开始。我想让表格从 1 开始而不是 332。我已经从数据中删除了数据,所以很清楚。如何将 ID 重置为一个。感谢和抱歉,如果这个在某个地方我不知道如何搜索这个。
ruby-on-rails - 在 Rails 中将自动增量添加回主键列
我错误地从表的 id 字段中删除了自动增量选项。谁能告诉我如何通过迁移重新插入自动增量选项?
php - SQL - 插入并捕获 id 自动增量值
使用 SELECT 在同一 SQL 中获取 auto-id 值的最佳方法是什么?
一个论坛说
在 ASP 中的 SQL 代码末尾添加这个“ ; has Return Scope_Identity()
” 。
PHP中有对应的方法吗?
sql - 你可以在 MySql 中使用自动增量而不是主键吗
我使用 GUID 作为所有其他表的主键,但我有一个需要递增数字的要求。我尝试使用自动增量在表中创建一个字段,但 MySql 抱怨它需要成为主键。
我的应用程序使用 MySql 5,nhibernate 作为 ORM。
我想到的可能的解决方案是:
将主键更改为自动增量字段,但仍将 Id 作为 GUID,因此我的应用程序的其余部分是一致的。
使用 GUID 和自动增量字段创建复合键。
我目前的想法倾向于复合关键思想。
编辑:行 ID(主键)是当前的 GUID。我想添加一个自动递增的 INT 字段,以便人类可读。我只是不想摆脱将 GUID 作为主键的应用程序中的当前标准。