Скопируйте данные из базы данных Mysql TableA базы данных1 в базу данных Mysql TableA с Ado.NET - PullRequest
1 голос
/ 10 декабря 2011

Перенос данных из одной базы данных в другую с помощью Entitiy Framework не кажется простым.Итак, у меня есть еще одна попытка с datatables и dataadapters:

    MySqlDataAdapter dataAdapter = new MySqlDataAdapter();

    MySqlCommand command = connection.CreateCommand();
    string query2 = "SELECT * FROM `" + targetTable + "`";
    command.CommandText = query2;
    dataAdapter.SelectCommand = command;

    DataTable tableToUpdate = new DataTable("myTable");
    dataAdapter.FillSchema(tableToUpdate, SchemaType.Source);
    dataAdapter.Fill(tableToUpdate);

    // an den DataAdapter übergeben
    MySqlCommandBuilder myComBuilder = new MySqlCommandBuilder(dataAdapter);
    dataAdapter.UpdateCommand = myComBuilder.GetUpdateCommand();
    dataAdapter.InsertCommand = myComBuilder.GetInsertCommand();

    tableToUpdate.Merge(sourceDT,false);

    int changeCount = dataAdapter.Update(tableToUpdate);s
    DataTable changes = tableToUpdate.GetChanges();

команды обновления и вставки кажутся правильными, но в базе данных ничего не обновляется?

edit: Кажется, проблема вв слиянии dataTables.Новые столбцы не добавляются.Добавлены новые строки, но состояние строки не изменилось.

...