当前位置: 首页 > 知识库问答 >
问题:

插入命令中的自动增量

易书
2023-03-14

我有一个表,我试图插入新行,但有一个列不会自动递增自己。有没有办法编写一个INSERT命令,根据列中的最高值自动递增该列?

共有2个答案

商泽宇
2023-03-14

最简单的方法是修改表并添加标识。这个就行了

ALTER TABLE yourTableName
ADD ID INT NOT NULL IDENTITY
公羊俭
2023-03-14

我认为使用子查询是您需要的。如果您使用的是MySQL或SQLServer,或者其他类型,请考虑进行必要的修改。修改表格使其自动递增将是最简单的方法。

下面是一个MySql示例:

INSERT INTO tableinquestion (id, column2, column3, ...)
VALUES (((SELECT id FROM tableinquestion ORDER BY id DESC LIMIT 0, 1)+1), value2, value3, ...);
 类似资料:
  • 我正在使用java中的MySQL库执行一个查询。在我的数据库结构中,有一列名为(主键,非空且自动递增)。通常在每次插入查询中,我都将值设置为,在查询执行后,它会增加最后一个id,但在java中这样做会给我异常。 这就是代码: 如何使用自动增量ID执行查询?

  • 问题内容: 我正在寻找这样的查询: id | int | 自动增量 varchar | 255 这样桌子就看起来像 1 | val1 2 | val2 3 | val3 … 除了id总是以每一行都结束而已。 我怎样才能做到这一点? 问题答案:

  • 问题内容: 我生成一个SQLite表(在Java中): 之后,我尝试使用INSERT命令添加行: 我得到错误: 我以为行ID会自动生成,但似乎我什么都没想。 我尝试了另一种解决方案: 结果,我在“ prep.setInt(1,n);”处收到一个空指针异常。 看到故障了吗? 问题答案: 您是否尝试指出要传递的参数应该与表的哪些字段相关? 在您的情况下,可能类似于:

  • 问题内容: 我正在尝试获取类似mysql_insert_id()的mysql命令;它检索最后插入的行的auto_increment ID。我该怎么做才能在Java中获得它? 我的姓氏声明为INT。我不知道在rs.get中使用什么以及参数。 问题答案: 尝试使用别名

  • 问题内容: 请考虑下表: 我将以这种方式向其插入条目。 如何知道为它创造了什么价值?仅使用该字段执行SELECT是无效的,因为可能会有重复的条目。 问题答案: 通过普通的SQL: 有关详细信息,请参见手册:http : //db.apache.org/derby/docs/10.7/ref/rrefidentityvallocal.html 从Java类(通过JDBC)执行此操作时,可以在通过适当

  • 现在我们谈论一个跟映射一样重要的东西:自动命令。 自动命令可以让Vim自动执行某些指定的命令,这些指定的命令会在某些事件发生的时候执行。我们先看一个例子。 使用:edit foo打开一个新文件,然后立即使用:quit关闭。查看你的硬盘,你会发现这个文件并不存在。这是因为在你第一次保存这个文件之前,Vim实际上并没有真正创建它。 让我们对Vim做一些改变,使得Vim可以在你开始编辑文件的时候就创建它