【问题标题】:Convert SQL dump to JSON?将 SQL 转储转换为 JSON?
【发布时间】:2017-01-06 01:38:06
【问题描述】:

我有一个来自 MediaWiki 的 SQL 转储,我想将其导出为 JSON - 我尝试了不同的方法,但似乎找不到任何解决方案。 sql 文件如下所示:

DROP TABLE IF EXISTS `geo_tags`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `geo_tags` (
  `gt_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `gt_page_id` int(10) unsigned NOT NULL,
  `gt_globe` varbinary(32) NOT NULL,
  `gt_primary` tinyint(1) NOT NULL,
  `gt_lat` decimal(11,8) DEFAULT NULL,
  `gt_lon` decimal(11,8) DEFAULT NULL,
  `gt_dim` int(11) DEFAULT NULL,
  `gt_type` varbinary(32) DEFAULT NULL,
  `gt_name` varbinary(255) DEFAULT NULL,
  `gt_country` binary(2) DEFAULT NULL,
  `gt_region` varbinary(3) DEFAULT NULL,
  PRIMARY KEY (`gt_id`),
  KEY `gt_page_primary` (`gt_page_id`,`gt_primary`),
  KEY `gt_page_id_id` (`gt_page_id`,`gt_id`)
) ENGINE=InnoDB AUTO_INCREMENT=4507036 DEFAULT CHARSET=binary ROW_FORMAT=DYNAMIC;

后跟几行 INSERT INTO

INSERT INTO `geo_tags` VALUES (3,487781,'earth',1,59.00000000,10.00000000,1000,NULL,NULL,NULL,NULL)

每当我尝试将 sql 文件导入 SQL 时,什么都没有发生。是否有任何简单的解决方案可以将我的数据转换为 JSON?

【问题讨论】:

  • 这个非常好用,很适合你的例子:csvjson.com/sql2json
  • @Galz 你完全正确!但是我有一个问题,它似乎只从 INSERT INTO 'geo_tags' VALUES 中获取第一个值,并跳过其余部分:/ 任何想法?

标签: mysql sql sql-server json mediawiki


【解决方案1】:

作为答案发布,因为我无法在 cmets 中发布图像。 http://www.csvjson.com/sql2json 似乎在几行上都能正常工作。也许它有一些限制?

您要插入多少条记录?

更新 csvjson.com 背后的人 Rockstar Martin Drapeau 刚刚实现了我的 feature request,所以现在 mysqldump INSERT 语法将在他的网站上运行。试试看here

【讨论】:

  • 我正在尝试插入大约 400 条记录,但我的 sql 文件与您的不同之处在于我的 sql 文件用逗号排列并分隔。像这样:INSERT INTO 'geo_tags' VALUES (....), (.....), (......) etc.
  • 是的,好像不支持。尝试用谷歌搜索其他一些工具——这只是我发现的第一个。此外,如果这是一次性操作,您始终可以将查询转换为多个插入...或者您可以在 github 上增强他/她的代码以支持您的用例!
  • 非常感谢您到目前为止的帮助 :) 我要么通过将它们分成单行来完成手动工作 - 要么寻找另一种替代方法 :)
  • 我将此作为问题提交给开发该网站的好人:github.com/martindrapeau/csvjson-app/issues/11
  • 顺便说一句 - 将 mysqldump 转换为 CSV 并将 csv 转换为 JSON 可能不是一个坏主意......可能有更多的工具可以完成其中的每一个,而不是直接从转储到语法JSON
猜你喜欢
  • 2017-03-19
  • 1970-01-01
  • 2022-09-27
  • 1970-01-01
  • 1970-01-01
  • 2021-08-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多