我正在使用Symfony 3.4,我需要每天将一些数据从一个表导入到另一个表。源表存储在 SQL Server 的数据库中。目标表存储在 MySql 数据库中。
实现此目的的最佳方法是什么?我正在考虑一个带有执行导入的 cron 的命令,但我不知道我是否应该使用 Doctrine 实体或 SQL 并将数据存储在数组中,然后将其复制到目标表中......一些建议?谢谢
一般来说,最好使用原则实体,因为它们有您的业务规则(例如,带有一些逻辑的自定义方法(
此外,您可以通过仅选择所需的属性/关系来部分加载具有EntityManager->createNativeQuery(...)
实体,因此学说水化过程将占用更少的内存。
正如@goto评论中提到的,批处理是操纵大量教义实体的关键(没有它需要很多内存(
没有一个好的解决方案,这取决于您每天必须迁移多少行。如果您必须处理非常庞大的数据集,则可以考虑使用本机SQL查询来简单地填充数组以提高性能。
我希望它对:)有所帮助