簡體   English   中英

C#將.CSV數據導入MySQL表只復制1列

[英]C# Importing .CSV Data Into MySQL Table Only Copies 1 Column

我有一個用C#編寫的方法,它試圖將.CSV文件中的數據復制到一個看起來像這樣的MySQL表中;

     public void writeToMySQL()
     {
        string constr = ConfigurationManager.ConnectionStrings["sqlString"].ConnectionString;
        using (MySqlConnection sqlCon = new MySqlConnection(constr))
        {
            try
            {
                sqlCon.Open();
                MySqlCommand sqlCmd = new MySqlCommand("LOAD DATA INFILE 'test.csv' INTO TABLE sdcdbftest.importexport;", sqlCon);
                sqlCmd.ExecuteNonQuery();
            }
            catch (MySqlException)
            {
                throw;
            }
        }
    } 

然而,正在發生的事情是只復制.CSV文件第一列的數據,而不是其他任何內容。 .CSV文件看起來像這樣;

在此輸入圖像描述

最后,這是通過phpMyAdmin在數據庫上構建表的方式;

在此輸入圖像描述

有沒有明顯的理由說明為什么只復制第一列(cs_id)?

文檔中LOAD DATA INFILE...命令的默認列終止符是制表符( \\t )字符。 所以你需要指定你在命令中使用逗號,如下所示:

LOAD DATA INFILE 'test.csv' 
    INTO TABLE sdcdbftest.importexport 
    FIELDS TERMINATED BY ',';

暫無
暫無

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

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