ÉèΪÊ×Ò³ ¼ÓÈëÊÕ²Ø

TOP

Zend_Db_Expr
2015-07-24 10:55:35 À´Ô´: ×÷Õß: ¡¾´ó ÖРС¡¿ ä¯ÀÀ:1´Î
Tags£ºZend_Db_Expr

ÔÚzendframeworkÖÐʹÓÃDbÀàʱ£¬¿ò¼Ü»á×Ô¶¯¸øsqlÓï¾äÌí¼ÓÒýºÅÒÔ·ÀÖ¹Êý¾Ý¿â¹¥»÷ £¬Õâ¾Íµ¼ÖÂÁËÒ»¸öÎÊÌ⣬Óû§ÎÞ·¨Ê¹ÓÃzend dbÀàʹÓÃmysqlµÄÄÚÖú¯Êý£¨·½·¨£¬´æ´¢¹ý³ÌµÈ£©¡£ºÃÔÚzend¿ò¼ÜÌṩÁËÒ»¸öÀàZend_Db_Expr£¬´ËÀàµÄ¹¹Ô캯Êý»á¸æËß¿ò¼Ü²»Òª¶ÔËüËùת»¯µÄÀàÐͽøÐÐÌí¼ÓÒýºÅµÄ²Ù×÷¡£

    public function setBatchDelete($orderIds) {
        $flag = YCL_Order::FLAG_DELETED;
        $updateTime = time();
        $data = array(
            'flag' => new Zend_Db_Expr("flag | $flag"),
            'update_time' => $updateTime
        );   
        $db = $this->getAdapter();
        $where = $db->quoteInto('service_order_id IN (?)',$orderIds);
        $this->update($data,$where);
    }

ÉÏÃæµÄÀý×Ó ×ó±ßµÄflagÊÇÊý¾Ý¿âÖеÄflag¡£

   $select=$db->select();
   $select->from("testtable","*");
   $select->where($db->quotInto("date>=?",new Zend_Db_Expr("UNIX_TIMESTAMP()"));
   $db->fetchAll($select);
¿ò¼Ü²»»á¶ÔUNIX_TIMESTAMP()Ìí¼ÓÒýºÅ£¬´Ó¶øÈÃÓû§ÄÜÕý³£Ê¹Óô˺¯Êý¡£
You also can create an object of type Zend_Db_Expr explicitly, to prevent a string from being treated as a column name.
¡¾´ó ÖРС¡¿¡¾´òÓ¡¡¿ ¡¾·±Ìå¡¿¡¾Í¶¸å¡¿¡¾Êղء¿ ¡¾ÍƼö¡¿¡¾¾Ù±¨¡¿¡¾ÆÀÂÛ¡¿ ¡¾¹Ø±Õ¡¿ ¡¾·µ»Ø¶¥²¿¡¿
·ÖÏíµ½: 
ÉÏһƪ£º11.2.0.4µ¥ÊµÀýµÄdbinstanceÆô¶¯.. ÏÂһƪ£ºÓÃÈȱ¸+¹éµµ»Ö¸´Ë𻵵ķÇϵͳ±í¿Õ..

ÆÀÂÛ

ÕÊ¡¡¡¡ºÅ: ÃÜÂë: (ÐÂÓû§×¢²á)
Ñé Ö¤ Âë:
±í¡¡¡¡Çé:
ÄÚ¡¡¡¡ÈÝ:

¡¤Linuxϵͳ¼ò½é (2025-12-25 21:55:25)
¡¤Linux°²×°MySQL¹ý³Ì (2025-12-25 21:55:22)
¡¤Linuxϵͳ°²×°½Ì³Ì£¨ (2025-12-25 21:55:20)
¡¤HTTP Åc HTTPS µÄ²î„ (2025-12-25 21:19:45)
¡¤ÍøÕ¾°²È«±ØÐ޿ΣºÍ¼ (2025-12-25 21:19:42)