我試圖重新在Zend框架下面,我不知道如何做到這一點:Zend_Db的 - 建立刪除查詢
DELETE FROM mytablename WHERE date(`time_cre`) < curdate() - INTERVAL 4 DAY
我的想法是這樣的:
$table = $this->getTable();
$db = Zend_Registry::get('dbAdapter');
$db->delete($table, array(
'date(`time_cre`) < curdate() - interval 4'
));
不這似乎是正確的?
處理這樣的事情的最佳方法是什麼?
編輯:確認!對不起,我正在調整這個來自我用來測試的SELECT,並且在我粘貼時沒有正確更改語法。我編輯了示例來修復它。
@ rg88目前尚不清楚你需要刪除什麼。 delete的語法是'DELETE FROM [table_name]' – criticus 2011-03-03 19:03:08
你使用的是什麼dbms(我會假設mysql?)你的語法是非標準的,而且很奇怪。如果你只想從一列中刪除數據,你應該使用UPDATE並將列設置爲NULL,'',0等.DELETE專門用於刪除整行,除非你的dbms支持我不熟悉的東西。 – 2011-03-03 19:05:12
從哪裏獲得該語法:'DELETE [something] FROM table [where]'? MySQL,PostgreSQL或Oracle都不使用它。 DELETE後,你不需要任何東西,因爲你刪除整行,而不是列值。 – singles 2011-03-03 19:06:40