我試圖導入文本文件到MySQL數據庫中,並且我無法使第一個字段(card_no)完全填充到我的所有記錄中。導入文件(不會產生任何錯誤)後,第一條記錄正確顯示,但其他記錄不顯示。任何人都可以告訴我如何補救這個? - 萬一它很重要,我使用phpMyAdmin加載文件。 - 謝謝你的時間。麻煩填充數據庫的所有字段
這裏的數據庫的結構:
Field Type Collation Attributes Null
card_no smallint(6) Yes NULL
name varchar(100) latin1_swedish_ci No
artist varchar(30) latin1_swedish_ci Yes NULL
color varchar(25) latin1_swedish_ci Yes NULL
rarity varchar(1) latin1_swedish_ci Yes NULL
expansion varchar(50) latin1_swedish_ci Yes NULL
下面的代碼:
LOAD DATA LOCAL INFILE 'C:\\xampp\\tmp\\php43.tmp'
INTO TABLE `mtginfo` FIELDS TERMINATED BY ';'
ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY ',';
這裏的導入的文件:
"1";"Ajani Goldmane";"Aleksi Briclot";"White";"M";"Magic 2010",
"2";"Angel's Mercy";"Andrew Robinson";"White";"C";"Magic 2010",
"3";"Armored Ascension";"Jesper Ejsing";"White";"U";"Magic 2010",
"4";"Baneslayer Angel";"Greg Staples";"White";"M";"Magic 2010",
"5";"Blinding Mage";"Eric Deschamps";"White";"C";"Magic 2010"
這裏的輸出的一個示例:
card_no name artist color rarity expansion
1 Ajani Goldmane Aleksi Briclot White M Magic 2010
0 Angel's Mercy Andrew Robinson White C Magic 2010
0 Armored Ascensi Jesper Ejsing White U Magic 2010
0 Baneslayer Ange Greg Staples White M Magic 2010
0 Blinding Mage Eric Deschamps White C Magic 2010
感謝您的答案Devart。不幸的是,仍然出現相同的結果因爲TERMINATED BY在那裏,LINES STARTING BY是不必要的嗎? - 我爲什麼不會看到任何其他card_no數據,但其餘的字段填充正常而感到困惑。 – Troy
我已經添加了LINES STARTING BY,因爲例子在開始的時候會包含一些whire空格。也許MySQL無法正確解析它。嘗試編輯您的CSV文件,刪除所有不必要的空格。 – Devart