我想知道将多维值数组插入数据库的最佳方法 - 特别是两个表?我创建了以下 foreach 循环,该循环创建了一个将所有记录插入到一个表中的查询:
foreach($newPosts as $value) {
if(!isset($postQuery)) {
$postQuery = "INSERT INTO posts (primay_key, col1, col2, col3, col4) VALUES ('$value[0]', FROM_UNIXTIME($value[4]), '$value[2]', '$value[1]', '$value[3]')";
} else {
$postQuery .= "('$value[0]', FROM_UNIXTIME($value[4]), '$value[2]', '$value[1]', '$value[3]')";
}
}
我想将其中一个值存储在单独的表中,因为该值特别大,并且该行的格式为 Longtext。查询数据库时也很少调用此值。我假设将它移动到第二个表中会提高第一个表的查询速度?那是对的吗?
如果我将此值移动到第二个表中,我想将表与第一个表中的 primary_key 链接,这是一个自动增量值。如何遍历这个多维数组并将我的数据插入到两个表中,同时将第一个表的 primary_key 插入到第二个表中?我知道如果我一次运行每个查询,我可以使用 LAST_INSERT_ID() 。有些更新会插入数百行,所以我不想这样做。
提前致谢!