PHP 数据批量插入数据库及更新数据
1、目前批量更新数据的方法有很多种,今天主要介绍的是:insert into ...on duplicate key update批量更新
2、接下来先介绍基本用法再上代码,举个例子,字段a被定义为UNIQUE,并且原数据库表table中已存在记录(1,2,2)和(2,2,1),如果插入记录的a值与原有记录重复,则更新原有记录,否则插入新行,如下:INSERT INTO TABLE (a,b,c) VALUES(1,3,2),(2,5,7),(3,3,3)ON DUPLICATE KEY UPDATE b=VALUES(b);则以上语句会将原有的(1,2,2)和(2,2,1)更新为(1,3,2)和(2,5,1),并插入一条新的数据(3,3,3)
3、以下是用php代码实现批量更新,由于需要更新多个字段所以需要用数组接收需要更新的字段值,主要的语句是将其拼接成sql: $s鳎溻趄酃ql = 'INSERT INTO `areas` ('. implode(',', $fields).') VALUES '; $sql .= implode(',', $values); $sql .= ' ON DUPLICATE KEY UPDATE '; $sql .= implode(',', $duplicateFields) . ';';
4、在这过程中,我在本地测试的时候会出现报错,原因:本地用的是navicat数据库,需要在字段名中加单引,不加单引会报错,代码如下:
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:31
阅读量:24
阅读量:90
阅读量:29
阅读量:74