【发布时间】:2011-10-22 16:47:18
【问题描述】:
我有棘手的SQL 查询要创建,如果可能的话,这将为我节省大量 PHP 代码。
所以我有一个 HTML 表单,访问者可以在其中创建一个用户帐户,其中包含 name、email、password、 字段兴趣。
对于 name、email 和 password,我有一个简单的 INSERT 查询来将此信息输入数据库 users,但是 interests 字段可以有多个条目,因此这些数据存储在多对多连接表中(interests、user_interests)。
为了让我在 user_interests 表中输入这些兴趣,我需要获取用户 ID 号,它是从初始 INSERT 查询自动递增的,并为每个“兴趣”用户已选择。我可以在一个 SQL 查询中完成这一切吗?
【问题讨论】:
-
您必须使用 2 个查询或一个事务。
LAST_INSERT_ID()将很有用:dev.mysql.com/doc/refman/5.1/en/… -
可能是的,使用 INSERT INTO (cols. . .) SELECT cols. . .从 。 . .,但是当您要执行此 SQL 时,您需要说明哪些信息在哪些表中。