簡體   English   中英

MySQL加載數據infile插入雙引號

[英]mysql load data infile inserting double quotes

嗨,我知道這個問題不僅是出於我的考慮,也是為了每個使用mysql LOAD DATA INFILE的用戶。

我只想知道為什么每次使用裝入數據infile導入數據時都收到雙引號(“”)? 來自csv的數據已成功添加到數據庫中,但是在該值中有一個雙引號。 例如。

“ value1” | “ value2” | “值3”

有什么幫助嗎? 這是我的mysql腳本。

echo $mysql = "LOAD DATA LOCAL INFILE '".$path ."' 
        REPLACE INTO TABLE table
        FIELDS 
            TERMINATED BY ',' 
        LINES 
            TERMINATED BY '\\n'
        IGNORE 1 LINES 
        (`column1`, `column2`, `column3`, `column4`..)";

        $query = mysqli_query($link, $mysql) or die(mysqli_error($link));

謝謝

我從您的問題中猜測,您的infile值與此類似,

"column1","column2","column3","column4"
"column1a","column2a","column3a","column4a"

因為在你的mysql的語句,你只說,字段由一個結束,它會讀取高達MySQL的引擎的值找到, ,因此qoutes。

聲明字段是否被某些東西包圍的mysql語法如下所示;

FIELDS ENCLOSED BY '"'

您的新查詢看起來像,

"LOAD DATA LOCAL INFILE '".$path ."' 
    REPLACE INTO TABLE table
    FIELDS 
        TERMINATED BY ',',
        ENCLOSED BY '"'
    LINES 
        TERMINATED BY '\\n'
    IGNORE 1 LINES 
    (`column1`, `column2`, `column3`, `column4`..)"

這告訴MySQL的引擎來尋找的人物" ,並采取該值作為字段值。

您可以在mysql網站上閱讀有關它的更多信息。

http://dev.mysql.com/doc/refman/5.1/en/load-data.html

希望這對您有所幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM