我試圖製作一個程序,將數據從一個表複製到其他服務器中的另一個表。使用C#上的參數從一個數據庫複製另一個數據庫中的行#
事情是表是不完全一樣的。所以我們可以說這是我的表:
服務器A: 表A(Col1中,col2的,COL3)
服務器B: 表B(Col1中,col2的)
我想從ServerA.TableA複製到ServerB.TableB。
我的代碼:
Truncate_table(ConnectionB, "TableB");
MySqlCommand CmdB = new MySqlCommand("", ConnectionB);
CmdB.CommandText = "INSERT INTO ServerB.TableB (col1, col2) VALUES (@val1, @val2)";
using (MySqlCommand cmd = new MySqlCommand("", ConnectionA))
{
cmd.CommandText = "SELECT col2, col3 FROM ServerA.TableA";
using (MySqlDataReader reader = cmd.ExecuteReader())
{
while (reader.Read())
{
CmdB.Parameters.AddWithValue("@val1", reader.GetInt32(0));
CmdB.Parameters.AddWithValue("@val2", reader.GetInt32(1));
CmdB.ExecuteNonQuery();
}
}
}
然而,它給錯誤說 '參數 '@ VAL1' 已被定義。'。
你們能給我一點建議嗎?
是否有更有效的方法來做到這一點?但我想在C#中做到這一點。