我對將大量原始數據插入數據庫的最佳方式有什麼問題。將大量原始數據插入到數據庫中PHP
的原始數據看起來是這樣的(這是一個很多,但我不認爲我需要用我的例子都):
CUSACODE - 遊戲 - 控制檯 - 大區 - DOWNLOADURL
CUSA00475 Akiba's Trip 2 PS4 JP http://gs2.ww.prod.dl.playstation.net/gs2/appkgo/prod/CUSA00475_00/4/f_28d6a38b6ebac96d17a8b4de7616f6e5de43da365ef30d8354fb55df94eb0a4a/f/JP0048-CUSA00475_00-AKIBASNEXTAPP000.pkg
CUSA00363 Alien: Isolation - 0 PS4 US http://gs2.ww.prod.dl.playstation.net/gs2/appkgo/prod/CUSA00363_00/3/f_e0ebc06845e6271392d9e3060bed29f7a1fb71bc4d8a966714ddc6df50934638/f/UP0177-CUSA00363_00-ALIENISOLATIONP4_0.pkg
CUSA00363 Alien: Isolation - 1 PS4 US http://gs2.ww.prod.dl.playstation.net/gs2/appkgo/prod/CUSA00363_00/3/f_e0ebc06845e6271392d9e3060bed29f7a1fb71bc4d8a966714ddc6df50934638/f/UP0177-CUSA00363_00-ALIENISOLATIONP4_1.pkg
CUSA00363 Alien: Isolation - 2 PS4 US http://gs2.ww.prod.dl.playstation.net/gs2/appkgo/prod/CUSA00363_00/3/f_e0ebc06845e6271392d9e3060bed29f7a1fb71bc4d8a966714ddc6df50934638/f/UP0177-CUSA00363_00-ALIENISOLATIONP4_2.pkg
使用空格分隔。
所以我認爲這將是一個很好的做法,首先製作一個數組。一旦它在數組中,通過while
和while
循環一個SQL INSERT查詢。
或者更好的做一個SQL查詢呢?有什麼方法可以生成這個SQL查詢,所以我不必手動添加所有東西?
我試着這樣做:
$data = "CUSA00475|Akiba's Trip 2|PS4|JP|http://gs2.ww.prod.dl.playstation.net/gs2/appkgo/prod/CUSA00475_00/4/f_28d6a38b6ebac96d17a8b4de7616f6e5de43da365ef30d8354fb55df94eb0a4a/f/JP0048-CUSA00475_00-AKIBASNEXTAPP000.pkg,
CUSA00363|Alien: Isolation - 0|PS4|US|http://gs2.ww.prod.dl.playstation.net/gs2/appkgo/prod/CUSA00363_00/3/f_e0ebc06845e6271392d9e3060bed29f7a1fb71bc4d8a966714ddc6df50934638/f/UP0177-CUSA00363_00-ALIENISOLATIONP4_0.pkg,
CUSA00363|Alien: Isolation - 1|PS4|US|http://gs2.ww.prod.dl.playstation.net/gs2/appkgo/prod/CUSA00363_00/3/f_e0ebc06845e6271392d9e3060bed29f7a1fb71bc4d8a966714ddc6df50934638/f/UP0177-CUSA00363_00-ALIENISOLATIONP4_1.pkg,
CUSA00363|Alien: Isolation - 2|PS4|US|http://gs2.ww.prod.dl.playstation.net/gs2/appkgo/prod/CUSA00363_00/3/f_e0ebc06845e6271392d9e3060bed29f7a1fb71bc4d8a966714ddc6df50934638/f/UP0177-CUSA00363_00-ALIENISOLATIONP4_2.pkg";
$result = explode("|", $data);
foreach($result as $res) {
$sub = explode(",",$res);
$mainCategory[$sub[0]] = explode("|",$sub[1]);
}
但是,可怕的失敗。我希望有人能幫助我解決這個問題!
哪些錯誤與進行SQL在while循環中插入?那裏有什麼問題? –
您的原始數據是否在文件中?最好不要將所有數據加載到內存中(如果您的數據量很大)。 – nand42
@FabianN。我不知道如何將這些信息放入數組中,所以我可以使用該數組將其插入到數據庫中。 – Mitch