LINQPad を使用して、DataSet を使用して MS Access テーブルをクエリしようとしていますが、クエリ結果を SQL テーブルに挿入したいと考えていました。
これは、MS Access テーブルからデータを取得する方法です。
string connectionString = ("Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq=C:\\Temp\\temp.mdb;");
OdbcConnection myconnection = new OdbcConnection(connectionString);
OdbcDataAdapter myadapter = new OdbcDataAdapter("SELECT * FROM Name", myconnection);
DataSet myCustomersDS = new DataSet();
myadapter.Fill(myCustomersDS, "Name");
ここで、LINQPad で、データセット myCustomersDS のすべてのレコードを SQL テーブルに挿入したいと考えました。この方法で LINQPad でデータセットをクエリしようとしたところ、正しい結果が得られました。
Connection.Open();
var toInsert = from b in myCustomersDS.Tables["Name"].AsEnumerable()
select b;
toInsert.Dump();
Connection.Close();
これらのコマンドのさまざまなバージョンを試しましたが、テーブルの型と一致しない DataSet の型に関連するエラーが常に発生します。
Name.InsertOnSubmit(toInsert);
SubmitChanges();
ありがとう、スティーブン