php - 使用 PHP 将表 1 中的多个值插入表 2
问题描述
我尝试从表 1 中获取所有值,然后将它们推送到数组中。然后我将数组插入表 2,但我得到的错误是:“Illegal string offset 'name'”、“Illegal string offset 'lat'”、“Illegal string offset 'lng'” 我已经搜索过这个错误并且尝试修复它,但我不能。有人可以帮我吗?这是我的代码:
$query = "DELETE FROM gpsdata";
$query_input = "SELECT name, lat, lng FROM gpsdata";
$result = mysqli_query($connect, $query_input);
while ($data = mysqli_fetch_array($result)) {
if (is_array($data)) {
$sql = array();
foreach ($data as $row) {
$sql[] = '(' . $row['name'] . ', ' . $row['lat'] . ', ' . $row['lng'] . ')';
};
$query2 = "INSERT INTO gpsdata_backup (name, lat, lng) VALUES ' . implode(',', $sql)'";
$result_insert = mysqli_query($connect, $query2);
}
}
解决方案
由于您没有对数据执行任何任务,为什么不通过直接使用 select 插入来在 mysql 中执行整个操作?
insert into `gpsdata_backup` ( `name`, `lat`, `lng` )
select `name`, `lat`, `lng` from `gpsdata`;
IE:
$sql='insert into `gpsdata_backup` ( `name`, `lat`, `lng` )
select `name`, `lat`, `lng` from `gpsdata`';
$result=$connect->query( $sql );
推荐阅读
- android - 尽管使用了最新版本,但在膨胀 CardView 时出现错误
- mongodb - mongoDB多计数查询
- java - 需要最佳实体和查询设计来获取具有多个关联的对象
- python - 尝试在 Postgre DB 上迁移模型时出现 Django 错误
- sql-server - node/mssql/async 尝试连续执行未知数量的查询
- ruby-on-rails - Rails ActiveRecord 将不相关的表包含到查询中
- php - I want to sum two columns' row and then the value insert the other column's row in the same table using php update. Is it possible?
- android - 使用 Xamarin.Forms 为 Android 版本构建时,“LinkAssemblies”任务意外失败
- python - 跟踪计算哪个子集以避免混合结果
- stripe-payments - 如何使用条带添加资金不足的支付来源?