php - mongodb:插入 mysql 列作为 mongodb 子文档

标签 php mysql mongodb

我正在尝试将 mysql 表导入到 mongodb 集合中。我想将 mysql 列作为 mongodb 子文档: MYSQL =>

| col1 | col2 | col3 | col4 |
------------------------------
| abc  | def  | ghi  | jkl  |
------------------------------
| 1234 | 5678 | 9876 | 4567 |
------------------------------
| abc  | def  | ghi  | jkl  |
------------------------------
etc.....

在 mongodb 中希望它们看起来像: MongoDB =>

> doc1: { 
>                col1["abc", "1234", "abc", .....],
>                col2["def", "5678", "def", .....],
>                col3["ghi", "9876", "ghi", .....],
>                col4["jkl", "4567", "jkl", .....],
>                etc.

我使用 php,我的代码如下所示:

$sql=mysql_query("select * from mytable") or die (mysql_error());
$count=mysql_num_rows($sql);
if (count > 0) {
while($data=mysql_fetch_row($sql)){
$mosql[]=$data;
}
$collection -> insert($mosql)
}

作为我得到的输出,它给出的是行而不是列:

doc1: { col1:[0:"abc", 1:"def", 2:"ghi", 3:"jkl".....], col2:[0:"1234", 1:"5678", 2:"9876", 3:"4567" .....], col3:[0:"abc", 1:"def", 2:"ghi", 3:"jkl".....], etc.

有人知道我做错了什么吗? 谢谢你的帮助!

最佳答案

您可能想要尝试循环遍历从 MySQL 返回的行数组,并将文档一个接一个地插入到 MongoDB 集合中,而不是一次插入整个数组。

关于php - mongodb:插入 mysql 列作为 mongodb 子文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15114713/

相关文章:

php - 使用 "Form Plugin"为 jQuery 上传 Ajax 文件

php - 列出不在内部联接中的 ID

php - 在 PHP MYSQL 中更新

c# - 如何将项目插入带有星标的数据库?

python - 如何通过Python向Mongo对象中插入数据

mongodb - 无法使用 MongoDB.Driver Include ProjectionDefinition 的 LINQ 表达式重载

PHP 连接错误;不允许连接到 MySQL 服务器

php - 如何将 composer 与 docker-compose 一起使用?

php -/web/bundles 下的 Assets 在 Symfony2 生产中找不到

java - MongoDB find 在带索引和不带索引的情况下速度相同