有什么方法可以将MySQL转储转换为YAML Alice Fixtures

时间:2019-01-09 15:55:00

标签: mysql symfony alice-fixtures

我有一个MySQL数据库转储,其中仅包含我想用作Alice Fixtures的数据。我想将版本化的yaml文件提交到我的分支上。有人知道解析SQL以便从它们生成YAML固定装置的库或捆绑软件,还是我应该继续研究轮子呢?我的意思是转换:

CREATE TABLE `shop` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(120) NOT NULL,
  `slug` VARCHAR(120) NOT NULL,
  `parent` INT(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  CONSTRAINT `FK_SHOP_PARENT` FOREIGN KEY (`parent`) REFERENCES `shop` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO `shop` VALUES
(1, 'Item Shop', 'item-shop-1', NULL),
(2, 'Forge', 'forge-1', NULL),
(3, 'Weapon Shop', 'forge-1-weapon-shop', 2),
(4, 'Armor Shop', 'forge-1-armor-shop', 2);

(请注意外键)

进入此:

Shop:
  shop_1:
    id: 1
    name: Item Shop
    slug: item-shop-1
  shop_2:
    id: 2
    name: Forge
    slug: forge-1
  shop_3:
    id: 3
    name: Weapon Shop
    slug: forge-1-weapon-shop
    parent: '@shop_2'
  shop_4
    id: 4
    name: Armor Shop
    slug: forge-1-armor-shop
    parent: '@shop_2'

(请注意引用'@shop_2'

这似乎是过去人们可能需要的东西,并且做起来并不难。如果有人知道这样做的库或捆绑软件,我将非常感激。如果没有的话,我一定会开始,然后再回过头来回答这个问题,并带回购链接。

1 个答案:

答案 0 :(得分:0)

虽然与 Symfony 无关,但 phpMyAdmin 确实具有 YAML 导出功能,您可以在此处阅读有关其支持的导出类型的更多信息:https://docs.phpmyadmin.net/nl/latest/import_export.html