目錄
回复内容:
###代码大概像这样吧,手打的,没有测试###
首頁 後端開發 php教程 php中如何执行批量插入数据到mysql

php中如何执行批量插入数据到mysql

Jun 06, 2016 pm 08:36 PM
mysql php 大量 批量插入

<code>$arr = Array
(
    [0] =&gt; Array
        (
            [u_id] =&gt; 1
            [userid] =&gt; feng003
            [status] =&gt; 3
            [confirm_time] =&gt; 1427940803
            [pv_total] =&gt; 0.00
        )

    [1] =&gt; Array
        (
            [u_id] =&gt; 1
            [userid] =&gt; feng003
            [status] =&gt; 3
            [confirm_time] =&gt; 1428477888
            [pv_total] =&gt; 0.00
        )

    [2] =&gt; Array
        (
            [u_id] =&gt; 1
            [userid] =&gt; feng003
            [status] =&gt; 3
            [confirm_time] =&gt; 1428475892
            [pv_total] =&gt; 0.00
        )

    [3] =&gt; Array
        (
            [u_id] =&gt; 2
            [userid] =&gt; feng001
            [status] =&gt; 3
            [confirm_time] =&gt; 1428482901
            [pv_total] =&gt; 0.00
        )

    [4] =&gt; Array
        (
            [u_id] =&gt; 2
            [userid] =&gt; feng001
            [status] =&gt; 3
            [confirm_time] =&gt; 1428483116
            [pv_total] =&gt; 0.00
        )

    [5] =&gt; Array
        (
            [u_id] =&gt; 1
            [userid] =&gt; feng003
            [status] =&gt; 3
            [confirm_time] =&gt; 1428483542
            [pv_total] =&gt; 20.00
        )

    [6] =&gt; Array
        (
            [u_id] =&gt; 1
            [userid] =&gt; feng003
            [status] =&gt; 3
            [confirm_time] =&gt; 1428475881
            [pv_total] =&gt; 40.00
        )

    [7] =&gt; Array
        (
            [u_id] =&gt; 5
            [userid] =&gt; feng005
            [status] =&gt; 3
            [confirm_time] =&gt; 1428474458
            [pv_total] =&gt; 100.00
        )

    [8] =&gt; Array
        (
            [u_id] =&gt; 4
            [userid] =&gt; feng004
            [status] =&gt; 3
            [confirm_time] =&gt; 1428475275
            [pv_total] =&gt; 100.00
        )

    [9] =&gt; Array
        (
            [u_id] =&gt; 3
            [userid] =&gt; feng002
            [status] =&gt; 3
            [confirm_time] =&gt; 1428475478
            [pv_total] =&gt; 100.00
        )

    [10] =&gt; Array
        (
            [u_id] =&gt; 2
            [userid] =&gt; feng001
            [status] =&gt; 3
            [confirm_time] =&gt; 1428475622
            [pv_total] =&gt; 100.00
        )

    [11] =&gt; Array
        (
            [u_id] =&gt; 6
            [userid] =&gt; feng006
            [status] =&gt; 3
            [confirm_time] =&gt; 1428479200
            [pv_total] =&gt; 100.00
        )

    [12] =&gt; Array
        (
            [u_id] =&gt; 6
            [userid] =&gt; feng006
            [status] =&gt; 3
            [confirm_time] =&gt; 1428483519
            [pv_total] =&gt; 40.00
        )

);
$count = count($res);
     $sql = "insert into users(periods,uid,username,pv) VALUES ";
           foreach($res as $key=&gt;$vo){
                if($key == $count-1){
                    $sql .= "(".$periods.",".$vo['u_id'].",'".$vo['userid']."',".$vo['pv_total'].")";
                }else{
                    $sql .= "(".$periods.",".$vo['u_id'].",'".$vo['userid']."',".$vo['pv_total']."),";
                }
            };
            M()-&gt;query($sql);
</code>
登入後複製
登入後複製

这样能行吗?没怎么用过批量操作数据库,请指导。

回复内容:

<code>$arr = Array
(
    [0] =&gt; Array
        (
            [u_id] =&gt; 1
            [userid] =&gt; feng003
            [status] =&gt; 3
            [confirm_time] =&gt; 1427940803
            [pv_total] =&gt; 0.00
        )

    [1] =&gt; Array
        (
            [u_id] =&gt; 1
            [userid] =&gt; feng003
            [status] =&gt; 3
            [confirm_time] =&gt; 1428477888
            [pv_total] =&gt; 0.00
        )

    [2] =&gt; Array
        (
            [u_id] =&gt; 1
            [userid] =&gt; feng003
            [status] =&gt; 3
            [confirm_time] =&gt; 1428475892
            [pv_total] =&gt; 0.00
        )

    [3] =&gt; Array
        (
            [u_id] =&gt; 2
            [userid] =&gt; feng001
            [status] =&gt; 3
            [confirm_time] =&gt; 1428482901
            [pv_total] =&gt; 0.00
        )

    [4] =&gt; Array
        (
            [u_id] =&gt; 2
            [userid] =&gt; feng001
            [status] =&gt; 3
            [confirm_time] =&gt; 1428483116
            [pv_total] =&gt; 0.00
        )

    [5] =&gt; Array
        (
            [u_id] =&gt; 1
            [userid] =&gt; feng003
            [status] =&gt; 3
            [confirm_time] =&gt; 1428483542
            [pv_total] =&gt; 20.00
        )

    [6] =&gt; Array
        (
            [u_id] =&gt; 1
            [userid] =&gt; feng003
            [status] =&gt; 3
            [confirm_time] =&gt; 1428475881
            [pv_total] =&gt; 40.00
        )

    [7] =&gt; Array
        (
            [u_id] =&gt; 5
            [userid] =&gt; feng005
            [status] =&gt; 3
            [confirm_time] =&gt; 1428474458
            [pv_total] =&gt; 100.00
        )

    [8] =&gt; Array
        (
            [u_id] =&gt; 4
            [userid] =&gt; feng004
            [status] =&gt; 3
            [confirm_time] =&gt; 1428475275
            [pv_total] =&gt; 100.00
        )

    [9] =&gt; Array
        (
            [u_id] =&gt; 3
            [userid] =&gt; feng002
            [status] =&gt; 3
            [confirm_time] =&gt; 1428475478
            [pv_total] =&gt; 100.00
        )

    [10] =&gt; Array
        (
            [u_id] =&gt; 2
            [userid] =&gt; feng001
            [status] =&gt; 3
            [confirm_time] =&gt; 1428475622
            [pv_total] =&gt; 100.00
        )

    [11] =&gt; Array
        (
            [u_id] =&gt; 6
            [userid] =&gt; feng006
            [status] =&gt; 3
            [confirm_time] =&gt; 1428479200
            [pv_total] =&gt; 100.00
        )

    [12] =&gt; Array
        (
            [u_id] =&gt; 6
            [userid] =&gt; feng006
            [status] =&gt; 3
            [confirm_time] =&gt; 1428483519
            [pv_total] =&gt; 40.00
        )

);
$count = count($res);
     $sql = "insert into users(periods,uid,username,pv) VALUES ";
           foreach($res as $key=&gt;$vo){
                if($key == $count-1){
                    $sql .= "(".$periods.",".$vo['u_id'].",'".$vo['userid']."',".$vo['pv_total'].")";
                }else{
                    $sql .= "(".$periods.",".$vo['u_id'].",'".$vo['userid']."',".$vo['pv_total']."),";
                }
            };
            M()-&gt;query($sql);
</code>
登入後複製
登入後複製

这样能行吗?没怎么用过批量操作数据库,请指导。

###代码大概像这样吧,手打的,没有测试###

<code>php</code><code>$sql = 'INSERT INTO TABLE (`u_uid`, `userid`,`status`,`confirm_time`,`pv_total`) VALUES';
foreach($arr as $k =&gt; $item) {
    $sql .= '(' . $item['u_uid'] . ',' . $item['userid'] . ',' . $item['status'] . ',' . $item['confirm_time'] . ',' . $item['pv_total'] . '),';
}
$sql = rtrim($sql, ',');
</code>
登入後複製

对,就是这样的。

<code>sql</code><code>INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....),(值1, 值2,....),(值1, 值2,....)
</code>
登入後複製

其实编程这玩意儿,你试试看就知道可不可行了。

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南 適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南 Dec 24, 2024 pm 04:42 PM

適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南

CakePHP 專案配置 CakePHP 專案配置 Sep 10, 2024 pm 05:25 PM

CakePHP 專案配置

CakePHP 日期和時間 CakePHP 日期和時間 Sep 10, 2024 pm 05:27 PM

CakePHP 日期和時間

CakePHP 檔案上傳 CakePHP 檔案上傳 Sep 10, 2024 pm 05:27 PM

CakePHP 檔案上傳

CakePHP 路由 CakePHP 路由 Sep 10, 2024 pm 05:25 PM

CakePHP 路由

討論 CakePHP 討論 CakePHP Sep 10, 2024 pm 05:28 PM

討論 CakePHP

如何修復 MySQL 8.4 上的 mysql_native_password 未載入錯誤 如何修復 MySQL 8.4 上的 mysql_native_password 未載入錯誤 Dec 09, 2024 am 11:42 AM

如何修復 MySQL 8.4 上的 mysql_native_password 未載入錯誤

如何設定 Visual Studio Code (VS Code) 進行 PHP 開發 如何設定 Visual Studio Code (VS Code) 進行 PHP 開發 Dec 20, 2024 am 11:31 AM

如何設定 Visual Studio Code (VS Code) 進行 PHP 開發

See all articles