Mysql CakePHP中有超过3000笔交易。怎么用?
我们正在通过SOAP将Magento产品导入CakePHP环境。我们有大约3000种产品,当然我们希望保持数据库中没有重复入口 我们使用InnoDB作为CakePHP中的产品数据库 我们有不同的方法:Mysql CakePHP中有超过3000笔交易。怎么用?,mysql,cakephp,transactions,innodb,Mysql,Cakephp,Transactions,Innodb,我们正在通过SOAP将Magento产品导入CakePHP环境。我们有大约3000种产品,当然我们希望保持数据库中没有重复入口 我们使用InnoDB作为CakePHP中的产品数据库 我们有不同的方法: 我们在产品模型上设置了validate var,并希望产品id是唯一的。问题:交易限制在2000号环岛。由于验证的唯一规则要求每个产品都使用SELECT语句,因此不会发生任何事情,因为事务被“消费” 将产品id设置为在数据库本身中唯一。看起来不错,唯一的问题是,在第一次导入之后,它总是抛出一个“重
有什么想法吗?因为问题与SQL相关,而且是一个导入问题,所以我会手动构建查询。可能会写入tmp/目录中的文件。所有这些插入都可以组成一个事务。通过这种方式,您可以在查询中添加on duplicate key ignore 就其本质而言,CakePHP运行大量查询,而且由于您在事务方面受到限制,所以我不会选择cake
当然,您可以更深入地研究cake,了解它的innodb类是如何工作的,看看是否有办法将查询包装到事务中。因此,“cake方式”没有解决方案?似乎没有其他方法可以做到这一点。所以,谢谢你的回答,我会接受的,因为似乎没有更好的方法。