gpt4 book ai didi

php - 为具有相同外键的表中的所有条目自动创建 ID

转载 作者:行者123 更新时间:2023-11-29 06:40:56 25 4
gpt4 key购买 nike

我有 19 个表,所有表都有一个名为 CompanyID 的列设置为引用 company 表的外键主键 CompanyID 设置为 auto_increment。

有没有一种方法可以将 INSERT 插入到所有表中而不必在每个查询中指定 CompanyID?因此,如果我首先插入到 company 表中,它将自动分配一个 CompanyID,我需要使用它来插入到其他 19 个表中,但我如何获得此信息?

我能想到的唯一方法是用 php 自动生成一个 ID,但我不喜欢这种方法,因为它不遵循我想使用的 1,2,3 约定。另一种方法是将信息插入 company 插入后运行选择并将公司名称与 CompanyID 匹配并将其设置为我脚本中的变量,但这似乎有很多额外的废话。有没有更好的办法?希望这是有道理的。

最佳答案

你使用 last_insert_id();

例如

INSERT INTO company ....

$id = SELECT last_insert_id();

INSERT INTO othertable (company_id) VALUES ($id)
INSERT INTO yetanothertable (company_id) VALUES ($id)

大多数处理 MySQL 的数据库库都有一些专用函数/方法来获取此 ID,而无需进行完整的查询,但所有库的基 native 制都是相同的 - 插入“核心”记录,检索它使用 last_insert_id() 类型调用自动生成的 ID,然后在所有子记录插入中使用该检索到的 ID。

关于php - 为具有相同外键的表中的所有条目自动创建 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21654660/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com