Symfony1 Symfony 1.4条令运行自定义查询发出警告

Symfony1 Symfony 1.4条令运行自定义查询发出警告,symfony1,doctrine,Symfony1,Doctrine,我尝试按如下方式运行以下查询 $query = "DELETE FROM `ski_chalet_price` WHERE 1"; $conn = Doctrine_Manager::getInstance()->connection(); $stmt = $conn->prepare($query); $stmt->execute(); 但它发出了以下警告 Warning: Invalid argument supplied for foreach() i

我尝试按如下方式运行以下查询

 $query = "DELETE FROM `ski_chalet_price` WHERE 1";    

 $conn = Doctrine_Manager::getInstance()->connection();
 $stmt = $conn->prepare($query);
 $stmt->execute();
但它发出了以下警告

Warning: Invalid argument supplied for foreach() in /home/dinuka/workspace/symfony/lib/plugins/sfDoctrinePlugin/lib/database/sfDoctrineConnectionProfiler.class.php on line 196

Warning: join(): Invalid arguments passed in /home/dinuka/workspace/symfony/lib/plugins/sfDoctrinePlugin/lib/database/sfDoctrineConnectionProfiler.class.php on line 141
这是我要运行的查询

INSERT INTO ski_chalet_price 
(ski_chalet_id, month, d_19,d_20,d_21,d_22,d_23,d_24,d_25,created_at) VALUES
(44,'2013-04-01',10,10,10,10,10,10,10,'2013-04-19 13:27:26') 
ON DUPLICATE KEY UPDATE 
ski_chalet_id = 44, month = '2013-04-01',d_19 = 10,d_20 = 10,d_21 = 10,d_22 = 10,d_23 = 10,d_24 = 10,d_25 = 10, updated_at = '2013-04-19 13:27:26' ;

这不取决于我的疑问。什么问题

我检查了
sfDoctrineConnectionProfiler.class.php上的代码,发现
execute()
需要一组空参数(即空数组)以避免投诉

因此:

应该是:

$stmt->execute(array());

请注意,错误中的“join”字具有误导性。它不是指SQL连接,而是指PHP的本机join()函数,它是introde()的别名。

为什么需要使用原始查询运行此类查询?你们不能用条令方法来做这个吗?不。实际上我想要运行Upsert查询。我以简单查询为例。此结果不是depend查询。然后,您是否可以放置您尝试执行的正确查询?还有,你在做什么after@j0k-这不是查询问题。我用示例查询更新了我的问题。我知道这不是一个查询问题,我想知道您在查询后做了什么,您对查询结果做了什么。
$stmt->execute(array());