【问题标题】:MySQL use "Auto Number Field Value" in another column on insertMySQL 在插入的另一列中使用“自动编号字段值”
【发布时间】:2016-04-23 12:07:17
【问题描述】:

MySQL 是否允许您在同一查询的另一列中使用下一个自动编号?

A 列(自动编号) B栏(文字) C栏(整数) D栏(文字)

INSERT INTO table VALUES ('','some text','THIS AUTO NUMBER','some text')

我们正在尝试使用我们的“自动编号”作为另一个字段的默认值。如果这是可能的,你可以分享语法。

当然,如果不可能,我可以只运行三个查询,首先插入,查询使用的自动编号,然后更新,但如果功能存在,它会很有帮助。

感谢您的宝贵时间。

【问题讨论】:

    标签: mysql insert


    【解决方案1】:

    如果我做对了,您需要根据刚刚获得的自动递增标识符计算一列的值。这似乎无法直接实现,尤其是如果您希望之后更改该值(否则计算列可能会起作用)。

    给出了几个答案here:

    • 使用触发器是一种选择,但我不建议在这种简单的情况下使用它

    • 创建一个Transaction,执行插入,然后使用生成的自动递增数字进行更新

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-13
      相关资源
      最近更新 更多