【问题标题】:insert record from another table with auto increment column new table使用自动增量列新表从另一个表插入记录
【发布时间】:2018-03-07 09:22:27
【问题描述】:

我必须从带有auto_increment id 字段的表中插入记录。

CREATE TEMPORARY TABLE tmptable SELECT * 
FROM  `wp_rg_lead_detail` 
WHERE lead_id =59;
UPDATE tmptable SET lead_id =60 WHERE lead_id =59;
insert into `wp_rg_lead_detail` (`id`, `lead_id`, `form_id`, `field_number`, `value`)
    select `id`, `lead_id`, `form_id`, `field_number`, `value`
    from `tmptable`
    WHERE lead_id =60;

键“PRIMARY”的重复条目“1”

我需要 auto_increment 在目标表中归档 id 应按上述查询递增。

【问题讨论】:

  • 你到底想做什么?为什么不能在wp_rg_lead_detail 中更新lead_id
  • 我必须从另一个表中插入记录,并自动递增新表 id

标签: mysql sql sql-insert auto-increment


【解决方案1】:

只是不要插入 ID,让列的 autoincremenet 属性处理它:

INSERT INTO `wp_rg_lead_detail` 
(`lead_id`, `form_id`, `field_number`, `value`) -- No Id!
SELECT `lead_id`, `form_id`, `field_number`, `value`
FROM   `tmptable`
WHERE  `lead_id` = 60;

【讨论】:

    猜你喜欢
    • 2021-01-18
    • 2017-08-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多