MySQL帮助:将数据插入两个表[关闭]
Posted
技术标签:
【中文标题】MySQL帮助:将数据插入两个表[关闭]【英文标题】:MySQL help: inserting data into two tables [closed] 【发布时间】:2012-02-27 14:17:21 【问题描述】:我有点理解这个问题。好吧,我有两个数据库表:
第一个是:
列表 listing_id -- 主键 标题 卧室 浴室 平方英尺 说明 类别 album_id - 外键
第二个是:相册 album_id -- 主键
我正在尝试编写一个 php 查询函数,该函数允许我将上述数据插入到我的数据库中。但是,我不太确定如何包含 album_id 以便它可以在创建列表时自动增加。 --- Album_id 的存在只是为了保存特定列表的几个图像。
谁能通过示例或来源解释我将如何解决这个问题?我在某处听说我可以通过加入来做到这一点,但我对 php 和 mysql 还很陌生,不知道它是如何工作的。 感谢所有帮助。谢谢。
解决了。谢谢大家!
【问题讨论】:
【参考方案1】:在列表中创建新行之前,只需在相册中创建一个新行,然后将此新专辑的 id 用作列表中的 album_id。
例如:
INSERT INTO Albums ....
INSERT INTO Listings ... (using last_id() for the album_id)
注意:last_id() 是“你的 sql-lib 中返回最后插入的 id 的函数”的伪代码
【讨论】:
【参考方案2】:您想在“列表”中添加一个新行,可能有一个现有的专辑 ID,或者您可以同时创建一个新的?
如果是这样,那么当你保存时,你应该先处理专辑,即将专辑保存到专辑表(它有一个自动递增的主表),确定新专辑行的已保存 id,然后存储你的列表行,包括相关的专辑 ID。
希望我能理解你的问题。
只是一个例子:
mysql_query("INSERT into 'albums'etc");
$id = mysql_insert_id();
mysql_query("INSERT into 'listings' album_id='$id' etc");
【讨论】:
你帮了我很大的忙。谢谢,尼克!以上是关于MySQL帮助:将数据插入两个表[关闭]的主要内容,如果未能解决你的问题,请参考以下文章