zoukankan      html  css  js  c++  java
  • cII 框架批量更新报错Message: Undefined index: id Filename: database/DB_query_builder.php

    正确代码:修改两处1949行和1955行

    protected function _update_batch($table, $values, $index)
    	{
    		$index_escaped = $this->protect_identifiers($index);
    
    		$ids = array();
    		foreach ($values as $key => $val)
    		{
    			$ids[] = $val[$index_escaped];
    
    			foreach (array_keys($val) as $field)
    			{
    				if ($field !== $index)
    				{
    					$final[$field][] = 'WHEN '.$index_escaped.' = '.$val[$index_escaped].' THEN '.$val[$field];
    				}
    			}
    		}
    
    		$cases = '';
    		foreach ($final as $k => $v)
    		{
    			$cases .= $k." = CASE \n"
    				.implode("\n", $v)."\n"
    				.'ELSE '.$k.' END, ';
    		}
    
    		$this->where($index_escaped.' IN('.implode(',', $ids).')', NULL, FALSE);
    
    		return 'UPDATE '.$table.' SET '.substr($cases, 0, -2).$this->_compile_wh('qb_where');
    	}

  • 相关阅读:
    ThinkPHP5.1 行为与钩子
    PHP 商品秒杀抢购业务流程
    MySQL 读写分离
    Redis 管道
    Redis 事务
    Redis 锁机制
    ThinkPHP 实现队列
    MySQL 存储引擎
    分布式唯一ID分配问题
    Lightscape
  • 原文地址:https://www.cnblogs.com/lxwphp/p/15452893.html
Copyright © 2011-2022 走看看