2012-01-24 28 views
0

我一直在使用以下命令將mysql數據專家轉換爲csv文件。對非簡單數據使用MySQL OUTFILE

SELECT * INTO OUTFILE 'output.csv' FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n' FROM table1; 

它適用於具有簡單數據的簡單表格。但是,如果表格包含html標記,雙引號,單引號,ascii字符等,則它不起作用,即它會將製表符和換行符放在不正確的位置,從而在不應該分解的地方分解數據。上面的sql腳本如何改進以導出html數據?

+0

請提供表格中的數據和預期輸出的一個小例子。 – newtover

回答

2

我試過SELECT ... INTO OUTFILE語句,然後LOAD DATA INFILE語句,一切正常,HTML文本導出/導入沒有任何錯誤(在MySQL 5.5上)。

嘗試添加ENCLOSED BY選項,它應該可以幫助你 -

SELECT * 
    INTO OUTFILE 'output.csv' 
    FIELDS TERMINATED BY '\t' ENCLOSED BY '"' 
    LINES TERMINATED BY '\n' 
FROM 
    table1; 


LOAD DATA INFILE 'output.csv' 
    INTO TABLE table1 
    FIELDS TERMINATED BY '\t' ENCLOSED BY '"' 
    LINES TERMINATED BY '\n';