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

डुप्लीकेट कुंजी अद्यतन के साथ MySQL लोड डेटा इनफाइल

इस कार्यक्षमता का अनुकरण करने के लिए इन चरणों का उपयोग किया जा सकता है:

  1. एक नई अस्थायी तालिका बनाएं।

    CREATE TEMPORARY TABLE temporary_table LIKE target_table;
    
  2. वैकल्पिक रूप से, चीजों को गति देने के लिए सभी सूचकांकों को अस्थायी तालिका से हटा दें।

    SHOW INDEX FROM temporary_table;
    DROP INDEX `PRIMARY` ON temporary_table;
    DROP INDEX `some_other_index` ON temporary_table;
    
  3. CSV को अस्थायी तालिका में लोड करें

    LOAD DATA INFILE 'your_file.csv'
    INTO TABLE temporary_table
    FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
    (field1, field2);
    
  4. ON DUPLICATE KEY UPDATE का उपयोग करके डेटा कॉपी करें

    SHOW COLUMNS FROM target_table;
    INSERT INTO target_table
    SELECT * FROM temporary_table
    ON DUPLICATE KEY UPDATE field1 = VALUES(field1), field2 = VALUES(field2);
    
  5. अस्थायी तालिका हटाएं

    DROP TEMPORARY TABLE temporary_table;
    

SHOW INDEX FROM . का इस्तेमाल करना और SHOW COLUMNS FROM इस प्रक्रिया को किसी भी तालिका के लिए स्वचालित किया जा सकता है।



  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 जाँच करें कि क्या संख्याएँ अल्पविराम से अलग की गई सूची में हैं

  2. MySQL में रूट यूजर के रूप में कैसे सेटअप और लॉगिन करें

  3. मायएसक्यूएल 5.6 ईओएल अनाउंसमेंट

  4. पायथन:एक MySQL तालिका को एक शब्दकोश के रूप में आयात करने के लिए mysqldb का उपयोग करें?

  5. mysql में अगली ऑटो-इन्क्रीमेंट आईडी कैसे प्राप्त करें?