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

MySQL डेटाबेस में पंक्तियों को सम्मिलित करने का सबसे कारगर तरीका

यहाँ मेरी "एकाधिक प्रविष्टियाँ" -कोड है।

100k पंक्तियों को सम्मिलित करने में 40 सेकंड के बजाय केवल 3 सेकंड लगा !!

public static void BulkToMySQL()
{
    string ConnectionString = "server=192.168.1xxx";
    StringBuilder sCommand = new StringBuilder("INSERT INTO User (FirstName, LastName) VALUES ");           
    using (MySqlConnection mConnection = new MySqlConnection(ConnectionString))
    {
        List<string> Rows = new List<string>();
        for (int i = 0; i < 100000; i++)
        {
            Rows.Add(string.Format("('{0}','{1}')", MySqlHelper.EscapeString("test"), MySqlHelper.EscapeString("test")));
        }
        sCommand.Append(string.Join(",", Rows));
        sCommand.Append(";");
        mConnection.Open();
        using (MySqlCommand myCmd = new MySqlCommand(sCommand.ToString(), mConnection))
        {
            myCmd.CommandType = CommandType.Text;
            myCmd.ExecuteNonQuery();
        }
    }
}

बनाया गया SQL-कथन इस तरह दिखता है:

INSERT INTO User (FirstName, LastName) VALUES ('test','test'),('test','test'),... ;

अपडेट करें :धन्यवाद सलमान ए मैंने MySQLHelper.EscapeString जोड़ा है कोड इंजेक्शन से बचने के लिए जो आंतरिक रूप से तब उपयोग किया जाता है जब आप पैरामीटर का उपयोग करते हैं।



  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. MySQL में स्रोत-प्रतिकृति प्रतिकृति को कैसे कॉन्फ़िगर करें

  4. अपने MySQL सर्वर के लिए InnoDB बफर पूल आकार की गणना करना

  5. PHP/MySQL पंक्ति डालें फिर 'आईडी' प्राप्त करें