我有三个基本上级联的表,例如:
编写mysql语句的最佳方法是创建初始主题/ section / subsection,这样我就可以获取新创建的行的id(auto_incremented)并使用它们将它们插入到后两个中?
修改的 我正在使用phpbb3,dunno如果这有很大的不同,但我通常使用$ db-sql_query()函数
答案 0 :(得分:1)
您可以使用mysql_insert_id()来获取最后一个插入ID。有关详细信息,请参阅reference。
答案 1 :(得分:1)
从父母那里开始 然后您可以在SELECT:
中使用LAST_INSERT_ID()或INSERTINSERT INTO TOPIC
(topic_id, topic)
VALUES (DEFAULT, $topic);
INSERT INTO SECTION
(topic_id, section)
SELECT topic_id, $section
FROM TOPIC
WHERE topic = $topic
INSERT INTO SUBSECTION
(section_id, topic_id, subsection)
SELECT section_id, topic_id
FROM SECTION
WHERE section = $section
此示例假定TOPIC.topic_id
,SECTION.section_id
和SUBSECTION
是auto_increment,主键列。
答案 2 :(得分:0)
据我所知,只有一种方式,即自上而下 要在某个部分中添加子部分,您必须已插入一个部分 要将主题添加到子部分,请确保先添加子部分 在途中,您将跟踪最后插入的ID(如果您刚刚创建它),以便将其提供给下一个实体。