我正在尝试使用 C# 将 MySQL 服务器上的一个表中的一些列复制到本地 MySQL 数据库。我该怎么做 ?
我不确定是否应该使用 MySQLDataAdapter 还是 Bulk Copy(我不太了解)。
最佳答案
批量复制将是一种更简单的方法。它采用先前创建的数据表并将其上传到数据库。
您可以使用以下代码来提供帮助。下面的代码允许您返回数据表:
public DataTable FillTable(string sql)
{
MySqlCommand sqlQuery = new MySqlCommand();
cmd.Connection = ;// insert the connection details of the DB to transfer FROM
cmd.CommandText = sql;
DataTable dt = new DataTable();
try
{
conn.Open();
dt.Load(cmd.ExecuteReader());
conn.Close();
}
catch (SqlException ex)
{
Console.WriteLine("fillTable: "+ ex.Message);
}
return dt;
}
然后使用以下命令,您可以将数据发送到新数据库:
Datatable newTable = FillTable("SELECT * FROM MyOldTable");
using (MySqlBulkCopy destination = new MySqlBulkCopy("MyNewDatabaseConnection String"))
{
destination.DestinationTableName = "myNewTable";
try
{
destination.WriteToServer(newTable);
}
catch (Exception Ex)
{
Console.WriteLine(Ex.Message);
}
}
引用MSDN
关于c# - C# 将 MySQL 服务器上的表中的数据复制到本地 MySql 数据库表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35410259/