導航:首頁 > 編程語言 > php導入大數據

php導入大數據

發布時間:2023-06-14 20:37:21

『壹』 如何用phpmyadmin導入大容量.sql文件

phpmyadmin導入大容量.sql文件步驟:

1,選中,並點擊需要需要導入到的資料庫:


出現:導入成功,執行了 xxx 個查詢。這句話,說明資料庫導入已經成功了。

『貳』 求關於php excel導入大數據到mysql的解決辦法

下載 PHPExcel

require_once('./PHPExcel/IOFactory.php');
$filePath='D:/xxx.xlsx';//excel文件名
$objReader=newPHPExcel_Reader_Excel2007();//具體查看(Documentation/Examples/Reader/exampleReader01.php)
$objPHPExcel=$objReader->load($filePath);
$sheetData=$objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
$insql='insertinto表名(x,x,x)valeus';
//遍歷數組$sheetData
//如果有標題先刪除unset($sheetData[1]);
foreach($sheetDataas$k=>$data){
$insql.='('.$data['A'].','.$data['B'].','.$data['C'].'),';
//一次插入100條數據減少資料庫壓力
if(($k+1/100)==0){
$insql=rtrim($insql,',').';';//將最後的逗號替換成分好
//插入資料庫並且重置字元串$insql
//或者保存到文件中利用source命令插入資料庫
}
}

『叄』 php+Mysql 大數據導入怎樣提高效率

優化SQL插入語句;
比如循環一條一條插入,改成鏈接多個值進行插入。
將:
foreach($re as $it){
$sql="insert into table (id,name) values(".$it['id'].","."$it['name'].")";
mysql_query($sql);
}
改為:
$sql="insert into table (id,name) values";
foreach($re as $it){
$str= "'".$it['id']."','".$it['name']."'";
}
$sql .= "(".$str."),";
$sql2 = substr($sql,0,-1);
mysql_query($sql);

打開mysql的配置文件,my.ini文件,並找到:max_allowed_packet項;

將值修改大一點,具體根據自己需要修改。比如這里修改為:1G。

重啟mysql服務;

5
如果運行頁面提示內存溢出,可將值設大一點。
Allowed memory size of 134217728 bytes exhausted (tried to allocate 132907287 bytes)
步驟閱讀
6
這樣,面對千萬數據導入的時候,比原來那種方法至少快好多倍。

『肆』 php如何讀取CSV大文件並且將其導入資料庫示例

思路:

讀取csv文件,每讀取一行數據,就插入資料庫

示例

文件夾結構

/
file.csv//csv大文件,這里只模擬三行數據,不考慮運行效率(PS:csv文件格式很簡單,文件一般較小,解析很快,運行效率的瓶頸主要在寫入資料庫操作)
index.php//php文件

file.csv

singi,20
lily,19
daming,23

index.php

/**
*讀取csv文件,每讀取一行數據,就插入資料庫
*/

//獲取資料庫實例
$dsn='mysql:dbname=test;host=127.0.0.1';
$user='root';
$password='';
try{
$db=newPDO($dsn,$user,$password);
}catch(PDOException$e){
echo'Connectionfailed:'.$e->getMessage();
}

//讀取file.csv文件
if(($handle=fopen("file.csv","r"))!==FALSE){
while(($row=fgetcsv($handle,1000,","))!==FALSE){
//寫入資料庫
$sth=$db->prepare('insertintotestsetname=:name,age=:age');
$sth->bindParam(':name',$row[0],PDO::PARAM_STR,255);
$sth->bindParam(':age',$row[1],PDO::PARAM_INT);
$sth->execute();
}
fclose($handle);
}

數據表

CREATETABLE`test`(
`id`INT(10)UNSIGNEDNOTNULLAUTO_INCREMENT,
`name`VARCHAR(255)NULLDEFAULT''COLLATE'utf8mb4_bin',
`age`INT(10)NULLDEFAULT'0',
PRIMARYKEY(`id`)
)
COLLATE='utf8mb4_bin'
ENGINE=InnoDB;

運行結束後,資料庫中會插入csv中的三行數據

『伍』 php怎麼把數據導入資料庫

需要PHP基礎知識和資料庫基礎知識。

以SQL為例。使用PHP MySQL 函數可以編輯資料庫。

mysql_connect() 函數打開MySQL 連接。舉例

<?php
$con = mysql_connect("localhost","mysql_user","mysql_pwd");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}// 一些代碼...mysql_close($con);
?>

mysql_connect()三個參數分別是伺服器名,連接賬號,連接密碼。

連接之後,可以使用mysql_select_db()設置要處理的資料庫,後面則是用資料庫語句處理數據。SQL語法簡介網頁鏈接

『陸』 php 怎麼解決 大數據量 插入資料庫

ini_set('max_execution_time','0');
$pdo
=
new
PDO("mysql:host=localhost;dbname=test","root","123456");
$sql
=
"insert
into
test(name,age,state,created_time)
values";
for($i=0;
$i<100000;
$i++){
$sql
.="('zhangsan',21,1,'2015-09-17')";
}
$sql
=
substr($sql,0,strlen($sql)-1);
var_mp($sql);
if($pdo
->
exec($sql)){
echo
"插入成功!";
echo
$pdo
->
lastinsertid();
}
試試吧。10萬條1分鍾多,我覺得還行

『柒』 PHP 用PHPExcel往資料庫導入大量數據

1、首先我們准備一個含有數據的Excel表格,表頭和數據表中的表欄位相對應。

『捌』 php,mysql,大批量的excel數據如何導入資料庫啊之前我錄數據也是這種方式,先轉化成cs

關於csv格式
如果內容中有逗號,可以把整個欄位用引號括起來,具體可參考網路csv。
例如
欄位1,「欄位2帶,號」,欄位3

其實,關鍵在於php讀取csv的規則,csv並不是一定要用逗號,也可以是分號等其他符號。
改一下對應的php讀取規則即可。

閱讀全文

與php導入大數據相關的資料

熱點內容
如何看漫威漫畫app 瀏覽:789
安卓手機如何按拼音排布app 瀏覽:721
java中exceptionin 瀏覽:882
java131 瀏覽:868
學英語不登錄的app哪個最好 瀏覽:299
安卓的後台運行怎麼設置 瀏覽:135
如何撰寫論文摘要以及編譯sci 瀏覽:416
安卓如何使用推特貼吧 瀏覽:429
怎樣避免程序員入獄 瀏覽:856
蘋果方塊消除安卓叫什麼 瀏覽:535
安卓世界征服者2怎麼聯機 瀏覽:297
國企招的程序員 瀏覽:969
哪個app可以看watch 瀏覽:518
dns備用什麼伺服器 瀏覽:1002
中達優控觸摸屏編譯失敗 瀏覽:80
上海科納壓縮機 瀏覽:680
python工時系統 瀏覽:551
查好友ip命令 瀏覽:118
通達信python量化交易 瀏覽:506
cnc編程工程師自我評價 瀏覽:133