• <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>

    php 如何快速插入8萬條數據

    在PHP項目開發階段中,我們可能需要大量的測試數據來測試我們的功能;或者在實際運營項目中,我們需要把日志文件寫入到數據庫中。那么如何大批量插入數據呢?這里提供幾種批量插入數據庫的方法,希望能幫助到大家。

    方式/步調

    1. 1

      方式1:逐條插入數據,輪回INSERT INTO 語句。這種方式效率最低,因為每完當作一次數據庫插入操作,時候大部門是耗損在毗連息爭析SQL語句上。此方式適合插入少量數據的時辰利用。

    2. 2

      方式2:利用拼接的SQL語句,利用一條SQL語句插入多條數據。這種體例可以削減SQL語句的解析次數,所以對例如法1效率會高點。若是拼接的SQL語句過長,可以對MYSQL的max_allowed_packet設置裝備擺設項設置下SQL語句巨細或者分批次輪回。

    3. 3

      方式3:利用事務提交,因為每次插入操作,MYSQL會建立一個內部事務,所以直接利用事務可以削減建立事務的耗損,所以對例如法1速度上會有所提高。若是只有一條SQL語句就沒有需要利用事務了。可以共同方式2一路利用,這樣可以大大提高執行效率。

    4. 4

      方式4:利用LOAD DATA LOCAL INFILE方式,將所有要插入的數據寫入CSV文件中,經由過程這個方式直接將整個文件內容導入到數據庫傍邊,也是可以提高速度的。注重需要開啟MYSQL的local_infile 設置裝備擺設項 set global local_infile = 'ON' 。

    5. 5

      總結:

      1.逐條插入數據,輪回INSERT INTO 語句

      2.利用一條SQL語句插入多條數據

      3.利用事務提交

      4.利用LOAD DATA LOCAL INFILE方式

      END

    注重事項

    • 利用一條SQL語句插入多條數據,需要考慮好每次插入的數據量,分幾回插入。
    • 只有1條sql語句就沒有需要利用事務。
    • 發表于 2020-03-01 19:00
    • 閱讀 ( 930 )
    • 分類:其他類型

    0 條評論

    請先 登錄 后評論
    聯系我們:uytrv@hotmail.com 問答工具
  • <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>
    久久久久精品国产麻豆