मैंने Zend के लिए काम किया और विशेष रूप से Zend_Db पर काफी काम किया।
नहीं, ON DUPLICATE KEY UPDATE
. के लिए कोई API समर्थन नहीं है वाक्य - विन्यास। इस मामले के लिए, आपको बस query()
. का उपयोग करना होगा और पूरा SQL स्टेटमेंट स्वयं बनाएं।
मैं एसक्यूएल में मूल्यों को प्रक्षेपित करने की अनुशंसा नहीं करता जैसा कि हार्वेज दिखाता है। क्वेरी पैरामीटर का उपयोग करें।
संपादित करें:आप VALUES()
. का उपयोग करके पैरामीटर को दोहराने से बच सकते हैं भाव।
$sql = "INSERT INTO sometable (id, col2, col3) VALUES (:id, :col2, :col3)
ON DUPLICATE KEY UPDATE col2 = VALUES(col2), col3 = VALUES(col3)";
$values = array("id"=>1, "col2"=>327, "col3"=>"active");