当前位置: 首页 > 面试题库 >

PHP将数据从一个表插入到另一个表

郑安晏
2023-03-14
问题内容

我试图将数据从一个表插入到另一个表,这是我收到的错误消息:

错误:将INERT插入到content2(d1,d2,d3)值(John,Doo,24);

错误:在字段列表中插入未知列’John’错误:INSERT INTO content2(d1,d2,d3)VALUES(Mary,Moe,36);

‘字段列表’中的未知列’Mary’错误:INSERT INTO content2(d1,d2,d3)值(Julie,Dooley,42)

‘字段列表’中未知列’Julie’错误:INSERT INTO content2(d1,d2,d3)VALUES(John,Doo,24);

错误:在字段列表中插入未知列’John’错误:INSERT INTO content2(d1,d2,d3)VALUES(Mary,Moe,36);

错误:在’字段列表’中的未知列’Mary’错误:INSERT INTO
content2(d1,d2,d3)VALUES(Julie,Dooley,42);

“字段列表”中的未知列“ Julie”

这是我的PHP代码:

//Get Connection
require_once('connect.php');

//Get Data
$sql = "SELECT d1, d2, d3 FROM content";
$result = mysqli_query($con, $sql);

if (mysqli_num_rows($result) > 0) {
// output data of each row
    while($row = mysqli_fetch_assoc($result)) {
        $row1 = $row["d1"];
        $row2 = $row["d2"];
        $row3 = $row["d3"];

//Insert Data to another table
            $sql = "INSERT INTO content2 (d1, d2, d3)
            VALUES ($row1, $row2, $row3);";
            if (mysqli_multi_query($con, $sql)) {
                echo "New records created successfully";
            } else {
                echo "Error: " . $sql . "<br>" . mysqli_error($con);
            }
        //echo "id: " . $row["d1"]. " - Name: " . $row["d2"]. " " . $row["d3"]. "<br>";
    }
} else {
    echo "0 results";
}

我不知道是什么问题。请帮忙


问题答案:

当PHP将您的插入查询发送到MySQL时,它最终看起来像这样:

INSERT INTO content2 (d1, d2, d3) VALUES (John, Mary, Julie);

因为在“ zhohohn”,“淢ary”和“
zhulie”之间没有引号,所以MySQL认为您是在指其他列名。快速而肮脏的解决方案是在查询中添加引号,但是正如@tadman所说,您永远不要使用这种查询样式,而应该使用bind_param将变量添加到查询中。

但是,如果您只想从一张表复制到另一张表(如@Dan Bracuk所说),则可以使用一个查询来做到这一点:

INSERT INTO content2 (d1, d2, d3)
SELECT d1, d2, d3
FROM content


 类似资料:
  • 问题内容: 我有2个不同的表,但各列的命名略有不同。我想从一个表中获取信息,然后将其放入另一个表中。仅当表1中的“信息字段”不为null时,才需要将表1中的信息放入表2中。表2在创建任何东西时都有一个唯一的ID,因此插入的任何东西都需要获得下一个可用的ID号。 表格1 表2 问题答案: 这应该工作。您无需担心Table2中的identify字段。

  • 问题内容: 我想从一个表中读取所有数据,然后将一些数据插入到另一个表中。我的查询是 但我有一个错误 请帮我。 问题答案: 您可以使用INSERT … SELECT语法。请注意,您可以在SELECT部分​​中直接引用“ 1”。

  • 我试图在从一个表创建一个值后将其插入另一个表我有两个数据库“mem”和“location” 我想从mem表中添加主键id,并将其插入到位置表中的user_id列中。 我有一个sql查询在我的注册表单页面,自动递增'id'在mem表中,但似乎没有添加相同的值到位置表中的user_id, 有人能帮忙吗!

  • 问题内容: 我有这段代码可以从“ jobseeker”表中选择所有字段,并可以通过将userType设置为“ admin”来更新“ user”表,其中userID =$ userID(此userID是我用户中的一个用户数据库)。然后,该语句应将这些值从“ jobseeker”表插入到“ admin”表中,然后从“ jobseeker表”中删除该用户。sql表很好,我的语句正在将userType更改

  • 我在课堂上创建了两个列表。 其中一个称为预算,包含元素section、month和sum,返回以下内容: [Budzet{sec='AGD/RTV',月='01',和=96},Budzet{sec='AGD/RTV',月='03',和=30},Budzet{sec='食品',月='04',和=23},Budzet{sec='游戏',月='09',和=1084}...] 这是SQL查询 第二个是元素

  • 问题内容: 我需要将数据从一个数据库迁移到另一个数据库,两者都在同一本地系统上。 表和列的名称不同,我不能从旧数据库迁移所有列,因此 对我不起作用。 但我只有一个 我的查询中有什么错误,我该如何解决? 提前致谢 问题答案: 您的查询应如下所示: 更新 由于这个答案的关注程度超出了我的预期,因此我应该扩展这个答案。首先,从答案本身看可能并不明显,但各列不必具有相同的名称。因此,以下操作也将起作用(假