Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# mysql表没有得到更新_C#_Mysql_Database - Fatal编程技术网

C# mysql表没有得到更新

C# mysql表没有得到更新,c#,mysql,database,C#,Mysql,Database,我正在将数据从SQL server复制到mysql。我从SQLServer加载一个表,从mysql加载一个表,然后将数据复制到服务器上。数据将被复制到新表中,但数据库中的表仍为空。提前谢谢。这是我的密码- private void WriteTable(DataTable table, string tablename) { long maxid=0; MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.

我正在将数据从SQL server复制到mysql。我从SQLServer加载一个表,从mysql加载一个表,然后将数据复制到服务器上。数据将被复制到新表中,但数据库中的表仍为空。提前谢谢。这是我的密码-

private void WriteTable(DataTable table, string tablename)
    {
        long maxid=0;
        MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand("select * from " + tablename, mysqlConn);
        MySql.Data.MySqlClient.MySqlDataAdapter adapter = new MySql.Data.MySqlClient.MySqlDataAdapter(cmd);
        DataTable dest = new DataTable();
        adapter.Fill(dest);
        txtMessages.Text += table.Rows.Count.ToString()+"\r\n";
        foreach (DataRow row in table.Rows)
        {
            DataRow newrow = dest.NewRow();
            newrow.BeginEdit();
            foreach (DataColumn col in table.Columns)
            {
                newrow[col.Caption] = row[col.Caption];
            }
            newrow.EndEdit();
            dest.Rows.Add(newrow);
            maxid = long.Parse(row["RowID"].ToString());
            txtMessages.Text += maxid.ToString() + "\r\n";
            SetRowID(tablename, maxid);
        }
        MySql.Data.MySqlClient.MySqlCommandBuilder builder = new MySql.Data.MySqlClient.MySqlCommandBuilder(adapter);
        adapter.DeleteCommand = builder.GetDeleteCommand();
        adapter.InsertCommand = builder.GetInsertCommand();
        adapter.UpdateCommand = builder.GetUpdateCommand();
        dest.AcceptChanges();
        adapter.Update(dest);

    }

仔细看看这个,这样提问者和你有同样的问题;已通过删除.AcceptChanges解决此问题;命令实际上,您已经告诉缓冲区更改已被写回,因此当您进行更多更改时,这些更改不会被提交。

可能重复的更改