Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL में CSV लोड हो रहा है क्या यह एक बग है? - फ़ाइल नहीं मिली अपवाद

खैर मुझे आखिरकार जवाब मिल गया। LOAD DATA FILE स्टेटमेंट के लिए फ़ाइल नाम एक स्ट्रिंग मान होना आवश्यक है, इसे पैरामीटर नहीं किया जा सकता है। दुर्भाग्य से MySQLCommand वर्ग को सी # स्ट्रिंग ऑब्जेक्ट के फ़ाइल पथ में एस्केप्ड \ पसंद नहीं है, इसलिए यह फ़ाइल नहीं ढूंढ सकता है। मैं इसे इस तरह से बच निकलकर काम करने के लिए मिला:

//build the LOAD DATA File command
string working = String.Format("LOAD DATA LOCAL INFILE '{0}' IGNORE ", files.FirstOrDefault().ToString()) +
                         String.Format("INTO TABLE {0} COLUMNS TERMINATED BY ',' LINES TERMINATED BY '\n'", "by_switch")+
                         String.Format(" IGNORE 1 LINES (`Switch`,`Port`,`WWPN`,@the_slot,`Port Index`,@the_time,`Interval`,`Port Send Packet Rate`,")+
                         String.Format("`Port Receive Packet Rate`,`Total Port Packet Rate`,`Port Send Data Rate`,")+        
                         String.Format("`Port Receive Data Rate`,`Total Port Data Rate`,`Port Peak Send Data Rate`,`Port Peak Receive Data Rate`,")+ 
                         String.Format("`Port Send Packet Size`,`Port Receive Packet Size`,`Overall Port Packet Size`,`Error Frame Rate`,")+
                         String.Format("`Dumped Frame Rate`,`Link Failure Rate`,`Loss of Sync Rate`,`Loss of Signal Rate`,`CRC Error Rate`,")+
                         String.Format(" `Short Frame Rate`,`Long Frame Rate`,`Encoding Disparity Error Rate`,")+         
                         String.Format("`Discarded Class3 Frame Rate`,`F-BSY Frame Rate`,`F-RJT Frame Rate`, `Port Send Bandwidth Percentage`,")+
                         String.Format("`Port Receive Bandwidth Percentage`, `Overall Port Bandwidth Percentage`,`Primitive Sequence Protocol Error Rate`,")+
                         String.Format("`Invalid Transmission Word Rate`,`Link Reset Transmitted Rate`,`Link Reset Received Rate`)")+ 
                          String.Format("SET Slot = nullif(@the_slot,''),")+ 
                          String.Format(@"Time= str_to_date(@the_time,'%m/%d/%y %h:%i %p')");


// now escape the escape character
       commandreplaced = commandreplaced.Replace(@"\", @"\\");

   // now execute the command
        MySqlCommand cmd = new MySqlCommand(commandreplaced,sqlconnect);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL LOG2 () फ़ंक्शन - किसी मान का बेस -2 लघुगणक लौटाएं

  2. MySQL मौजूदा टेबल कॉलम की व्यवस्था करता है

  3. mysql पूर्ण पाठ खोज अपेक्षित परिणाम नहीं लौटा रहा है

  4. MySQL - एकाधिक स्तंभ अनुक्रमणिका

  5. MYSQL स्ट्रिंग के एक टुकड़े का चयन करें और उस टुकड़े के अनुसार क्रम दें