CREATE TABLE `person5` (
`Id` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`Name` longtext,
`PId` int NOT NULL,
PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
CREATE TABLE `person6` (
`Id` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`Name` longtext,
`PId` int NOT NULL,
PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MySql.Data;
using MySql.Data.MySqlClient;
using System.IO;
using System.Diagnostics;
namespace ConsoleApp27
{
class Program
{
static void Main(string[] args)
{
Task t1 = Task.Run(() =>
{
MySQLInsertDataDemo();
});
Task t2 = Task.Run(() =>
{
MySQLInsertDataDemo2();
});
Task.WaitAll(new Task[] { t1, t2 });
}
static void MySQLInsertDataDemo()
{
string connString = "Server=localhost;Port=3306;Database=mydb;Uid=root;Pwd=Root;";
using (MySqlConnection conn = new MySqlConnection(connString))
{
conn.Open();
int k = 0;
for (int i = 0; i < 1000; i++)
{
Stopwatch sw = new Stopwatch();
sw.Start();
int insertedRows = 0;
StringBuilder sqlBuilder = new StringBuilder();
sqlBuilder.Append("insert into person5 values");
for (int j = 0; j < 10000; j++)
{
sqlBuilder.Append("('" + Guid.NewGuid().ToString() + "','" + "Fred" + k + "','" + k + "'),");
k++;
}
using (MySqlCommand cmd = new MySqlCommand())
{
cmd.Connection = conn;
cmd.CommandTimeout = 0;
string insertSQL = sqlBuilder.ToString();
int lastCommaIndex = insertSQL.LastIndexOf(',');
cmd.CommandText = insertSQL.Remove(lastCommaIndex);
insertedRows = cmd.ExecuteNonQuery();
}
sw.Stop();
string msg = $"{DateTime.Now.ToString("yyyyMMddHHmmssffff")},time cost:{sw.ElapsedMilliseconds},insertedRows:{insertedRows},loop:{i}";
File.AppendAllText("Time5.txt", msg + Environment.NewLine + Environment.NewLine);
Console.WriteLine(msg);
}
}
}
static void MySQLInsertDataDemo2()
{
string connString = "Server=localhost;Port=3306;Database=mydb;Uid=root;Pwd=Root;";
using (MySqlConnection conn = new MySqlConnection(connString))
{
conn.Open();
int k = 0;
for (int i = 0; i < 10000; i++)
{
Stopwatch sw = new Stopwatch();
sw.Start();
int insertedRows = 0;
StringBuilder sqlBuilder = new StringBuilder();
sqlBuilder.Append("insert into person6 values");
for (int j = 0; j < 1000; j++)
{
sqlBuilder.Append("('" + Guid.NewGuid().ToString() + "','" + "Fred" + k + "','" + k + "'),");
k++;
}
using (MySqlCommand cmd = new MySqlCommand())
{
cmd.Connection = conn;
cmd.CommandTimeout = 0;
string insertSQL = sqlBuilder.ToString();
int lastCommaIndex = insertSQL.LastIndexOf(',');
cmd.CommandText = insertSQL.Remove(lastCommaIndex);
insertedRows = cmd.ExecuteNonQuery();
}
sw.Stop();
string msg = $"{DateTime.Now.ToString("yyyyMMddHHmmssffff")},time cost:{sw.ElapsedMilliseconds},insertedRows:{insertedRows},loop:{i}";
File.AppendAllText("Time6.txt", msg + Environment.NewLine + Environment.NewLine);
Console.WriteLine(msg);
}
}
}
}
}