C#获取mysql自动增量值[重复]

Posted

技术标签:

【中文标题】C#获取mysql自动增量值[重复]【英文标题】:C# Get mysql auto increment value [duplicate] 【发布时间】:2018-07-27 20:23:37 【问题描述】:

我想在插入一行之前知道自动增量值。这意味着不喜欢“选择 MAX(id)”。可能有删除的行,所以我需要自动递增值。如何使用 query 或 c# 获取它?

【问题讨论】:

这感觉就像你要实现一个竞态条件 ..你应该让数据库处理自动增量..不要查询自动增量并插入自己那个id。 为什么要在插入行之前知道Id?你想用它做什么? 相信这个问题有你的答案:stack overflow @Progman 我将在数据网格中添加一行数据表,同一行将添加数据库。我将使用异步添加数据库。首先添加数据网格,然后添加异步数据库。要首先在 datagrid 上添加,我需要在 datagrid 上添加 id 的最后一个自动增量值。 @Tim 我试过 LAST_INSERT_ID()。但每次都返回 0。 【参考方案1】:

我认为您可以在 SQL 查询中使用 LAST_INSERT_ID(),然后您可以按照自己喜欢的方式在代码中增加 +1... 这样,您将获得下一个自动增量值。

希望对您有所帮助! 让我知道这是否有效...

【讨论】:

每次都返回0。 哦,对不起,它只在其他场合有效,但我认为这段代码这次会有效......试试这个:SELECT auto_increment FROM INFORMATION_SCHEMA.TABLES WHERE table_name = 'tablename'; 只是让您知道,当您将表设置为自动增量并删除一行时,例如,不要假设该行的自动增量值为 5。然后在您删除它之后,您制作的下一个插入现在将具有自动增量值 6,而不是再次使用值 5!希望这能解决您的问题...

以上是关于C#获取mysql自动增量值[重复]的主要内容,如果未能解决你的问题,请参考以下文章

在 C# 中附加 CSV 函数的自动增量值

关于清除 Sql 表变量的自动增量值 [重复]

mysql 重置当前的自动增量值

MySQL Workbench - 更改下一个自动增量值不起作用

如何将自动增量值设置为我喜欢的默认值 [重复]

MySQL自动增量值设置为零