C# 将MS Access数据库导入SQL Server时性能低下
将项目从MS AccessC# 将MS Access数据库导入SQL Server时性能低下,c#,sql-server,database,performance,C#,Sql Server,Database,Performance,将项目从MS Access.mdb数据库文件导入SQL Server时出现问题。我编写了一个C#application in practice数据库,它可以推断.mdb数据库中的数据,并将它们放在SQL Server数据库的表中 我的问题是.mdb数据库包含大约300000篇文章,这些文章将与SQL Server数据库中的所有控件一起插入。.mdb文件由用户选择 我怎样才能加快物品的进口 这是我的C#代码: 考虑使用。由于您正在运行sql查询,我建议您尽可能多地在服务器端工作。在Sql Serv
.mdb
数据库文件导入SQL Server时出现问题。我编写了一个C#application in practice数据库,它可以推断.mdb
数据库中的数据,并将它们放在SQL Server数据库的表中
我的问题是.mdb
数据库包含大约300000篇文章,这些文章将与SQL Server数据库中的所有控件一起插入。.mdb
文件由用户选择
我怎样才能加快物品的进口
这是我的C#代码:
考虑使用。由于您正在运行sql查询,我建议您尽可能多地在服务器端工作。在Sql Server中创建临时表,将所有记录添加到datatable或datarows数组,并使用SqlBulkCopy导入。我认为这是将所有记录移动到Sql Server的最快方法
从那里,您只需几个查询即可同步Sql Server中的两个表。我将使用SqlBulkCopy
dbConn = new OleDbConnection(@"Provider = Microsoft.Jet.OLEDB.4.0; Data Source=" + dialog.FileName + "; Persist Security Info = False; Jet OLEDB:Database Password = " + textBoxPwdComet.Text + "; Mode = Share Deny None");
SqlConnection conn2 = db.apriconnessione();
string query = "SELECT CODMARCA,CODART,DESCR,UM,PRZNETTO,PRZCASA,DATAAGG FROM ARTICOLI";
OleDbDataAdapter da = new OleDbDataAdapter(query,dbConn);
DataTable dt = new DataTable();
da.Fill(dt);
conn2.Open();
SqlBulkCopy bulk = new SqlBulkCopy(conn2);
bulk.DestinationTableName = "ARTICOLI";
bulk.WriteToServer(dt);
conn2.close();
谢谢,我会试试你的方法
dbConn = new OleDbConnection(@"Provider = Microsoft.Jet.OLEDB.4.0; Data Source=" + dialog.FileName + "; Persist Security Info = False; Jet OLEDB:Database Password = " + textBoxPwdComet.Text + "; Mode = Share Deny None");
SqlConnection conn2 = db.apriconnessione();
string query = "SELECT CODMARCA,CODART,DESCR,UM,PRZNETTO,PRZCASA,DATAAGG FROM ARTICOLI";
OleDbDataAdapter da = new OleDbDataAdapter(query,dbConn);
DataTable dt = new DataTable();
da.Fill(dt);
conn2.Open();
SqlBulkCopy bulk = new SqlBulkCopy(conn2);
bulk.DestinationTableName = "ARTICOLI";
bulk.WriteToServer(dt);
conn2.close();