2011-01-06 135 views
1

我一直在試圖在最後一天左右將使用phpMyAdmin從Access中導出的​​記錄文本文件導入到MySQL中。這些字段由管道「|」分隔並且這些字段由引號「」環繞。我不完全確定行結束,但是,我嘗試使用auto,\ n,\ r,] \ r \ n都無濟於事。它只導入第一條記錄,就是這樣。非常生氣。我已經在互聯網上搜索線索,他們都說要確保字段類型和數字匹配......他們所做的。我在我束手無策,所以我希望有人能救我脫離這;-)文本文件的基本格式如下:將文本文件導入到MySql中

|"CBCF"|"CBOFT"|"Provincial"|"yes"|"Newsroom"|"Control Room"|"Prog. Director"|"News Director"|"OPS Manager"|"Engineer/IT"|"General Manager"|"General Sales Manager"|""|""|""|"514-597-5353"|""|"514-597-5353"|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|"613-XXX-XXXX"|""|""|""|""|""|""|""|""|""|""|"[email protected]"|""|""|""|""|""|""|""|""|""|""|"EASTERN"|"Radio-Canada French Services"|15/5/2008 9:38:12|22/7/2010 15:00:28|"***Provincial contact for RDI, our 24 news service, and Radio Internet service." 

回答

0

您是否嘗試過使用命令行上的mysqlimport?它應該是這樣簡單的:

mysqlimport --fields-terminated-by="|" --fields-enclosed-by="\"" your_db table_name.txt 
1

如果這有助於某人,這是我所做的導入工作。

在收到各種重複的鍵錯誤或只有第一個記錄導入後,我仔細看了看我如何設置PRIMARY KEY。它被設置爲TINY INT和AUTO INCREMENT。所以我刪除了列,然後重新插入,這次是SM INT,unsigned,AUTO INCREMENT,然後導入正常工作。因此,確保CSV或分隔文本文件格式正確的關鍵(我推薦使用「管道」字符作爲分隔符,字段中沒有引號),數據庫表字段與您的文本文件完全匹配(至少在條款的列數)並且您的PRIMARY KEY設置正確。至少這是對我有用的東西。

Dave