我想编写替换查询来更新或插入多行数据。我怎样才能在zend framework 1.12中写这个。
是否有任何选项可以提供数组值,以便它可以同时插入/更新多行?请帮我这样做。
答案 0 :(得分:0)
使用update
的Table class方法。
例如,如果我们想要为用户提供1,2,3的主键(字段id
),则为Bob的名称(字段name
):
$users = new Users();
$data = array(
'name' => 'Bob'
);
$where = array(
sprintf('id IN (%s)', implode(',', array(1,2,3)))
);
$users->update($data, $where);
如有必要,引用条件以防止SQL注入。您还可以直接从数据库适配器实例更新行,请参阅Zend_Db_Adapter。
注意:implode
允许用户使用具有适当字符串表示的任何数据类型。