あるテーブルを別のテーブルにコピーするために使用するこのコードがありますが、コマンドステートメントの実行中にエラーが発生しました。
エラーは、接続が開いていないか有効ではないことを示しています。デバッグすると、開いていることがわかります。なぜ有効でないのか本当にわかりません。
con.ConnectionString = ConfigurationManager.ConnectionStrings["Con2"].ConnectionString;
con.Open();
cmd = new MySqlCommand("SELECT COUNT(*) FROM " + ConfigSettings.ReadSetting("main_base"), con);
int nRows = Convert.ToInt32(cmd.ExecuteScalar());
con.Close();
if (nRows > 0)
{
con.ConnectionString = ConfigurationManager.ConnectionStrings["Con1"].ConnectionString;
con.Open();
cmd = new MySqlCommand("INSERT INTO temp_data SELECT * FROM data");
cmd.ExecuteScalar();
}
最後のコマンドまですべてがうまくいきます:
cmd = new MySqlCommand("INSERT INTO temp_data SELECT * FROM data");
cmd.ExecuteScalar();
これら 2 つのデータベースが異なるサーバー上にある場合でも、これは可能ですか? たぶん、同時に2つの接続を開く必要がありますか?