当前位置: 首页 > 面试题库 >

mysql中的多个自动增量

关项明
2023-03-14
问题内容

我正在使用php和mysql。我有一个表,其中id列设置为自动递增作为主键。我正在尝试添加另一个名为sort_order的列。插入行后,sort_order列应自动递增。然后,用户将能够更改sort_order值。但是mysql不允许多于一列的自动递增?

自动递增sort_order值的最佳方法是什么?

受欢迎的要求,更多的解释。

在管理区域中,用户将具有类别列表。用户可以使用javascript拖动所需类别的顺序。然后,脚本将发布新顺序中所有ID的列表,以及旧顺序中的sort_order值。

然后,我有了一个用新的sort_order值更新mysql的php函数

除我手动填写所有sort_order值外,所有这些都已完成。我希望它在用户创建新类别时能够有一个值。

然后,我可以使用sort_order在前端正确显示类别顺序。

我已经做好了 但是在开发中,我手动填写了sort_order的值。


问题答案:

您可以使用触发器,请参见http://dev.mysql.com/doc/refman/5.1/de/create-
trigger.html



 类似资料:
  • 问题内容: 我有下面的SQL,我正在尝试使用它创建一个表和一些列。作为它的一部分,我希望其中两列自动递增一个整数。当我尝试使用以下代码时,它给我一个错误。 当我从SQL中删除关键字“ AUTOINCREMENT”时,它可以正常工作。 是否可以有两个自动增量列?如果不是,是否有办法让一列在插入时自动从另一列(自动递增)中获取值? 谢谢 问题答案: 您不能有两个自动增量字段。您应该使用一个自动增量字段

  • 问题内容: 我正在尝试在mysql数据库中创建一列,该列自动递增1但从0-Z开始然后滚动。 例如000、001、002,…,009、00A,00B,…,00Z,010,…,0ZZ,…,100。 我想让数据库通过自动递增字段创建列。 我的想法是: 为从0到36的每个字符创建一列,然后将行N(其中N是最低有效数字)自动递增1。然后在每列上添加触发器,以在第N列达到36时向N-1列添加1 。 创建一个包

  • 问题内容: 我在使用InnoDB的MySQL中有一个表,其中有一列名为“ id”的列。 所以我的问题是,每当我从表中删除最后一行然后插入新值时,新值都会在删除的ID之后插入。 我的意思是假设我的id是32,我想删除它,然后如果我在删除后插入新行,则列id会自动递增到33。因此序列格式被破坏了,即id = 30,31,33而且不是32。 因此,当我删除最后一列后插入时,请帮我分配ID 32(而不是3

  • 问题内容: 如何在MySQL中获取下一个ID以将其插入表中 问题答案: 使用从您的SQL查询。 要么 您也可以使用PHP来获取它。

  • 问题内容: 我们希望从mySQL获取一个自动递增的ID,而无需实际存储它,直到其他与mysql不相关的进程成功完成为止,这样,如果发生异常或应用程序崩溃,就不会存储该条目。我们需要使用ID作为其他进程的密钥。本质上,我们要“保留”自动增量,并将最后一行插入到mySQL中。我们不希望在知道整个过程成功完成之前插入任何行。 可以在mySQL中进行这种自动增量保留吗? 注意:我了解SQL事务。但是,我们

  • 您好,我尝试使用mysqli从第一个表中获取autoincrement id,然后插入到第二个表中,这是我为每个表设计的数据库 表用户 表siswa 这就是我尝试过的 数据插入到用户表中,但不插入到siswa表中,对此有何建议? 编辑:被忽略的变量只($jkortu)现在修复,谢谢