我需要在 CAKEPHP 的 saveAll() 方法中添加 IGNORE 选项。我想要 this 的精确实现。回答的其他一些 SO 问题与验证和 isUnique() 这样的检查有关。我需要执行这个条件,不关心后面发生了什么。
请多多指教。
最佳答案
除了使用 execute()
之外,我认为这是唯一可能的方法。如果您扩展了 Mysql
数据源类并更改了 create()
的行为,那么您的数据源提供的函数就是这样。和 renderStatement()
函数包括您希望它附加 IGNORE
SQL 关键字的情况。
您希望将数据源文件放在 APP/Model/Datasource/
中并让它扩展 Mysql
(假设您使用 CakePHP 2+)。看看上面的两个函数。我只是创建一个案例,如果在调用 renderStatement()
时使用“createignore”而不是“create”,当某个选项传递给 create()
时。
也就是说,很可能有一种方法可以在不经历那么多麻烦的情况下实现您想要做的事情。如果您详细说明您正在尝试做什么,我可能会为您提供更好的答案。
关于php - 将 INSERT IGNORE 语句添加到 CAKEPHP saveAll 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9919714/