我的项目是从.mdb到.csv文件的文件夹中提取一些属性。所有函数都正常处理,但我遇到了ConnectionString的问题。
第一次运行时,它会打开文件夹中第一个文件的连接,并提取.csv文件并关闭连接。到目前为止一切都很好。
之后,当它转到文件夹中的第二个文件时,它会以某种方式再次打开第一个文件的ConnectionString,但该函数会调用第二个.mdb文件。如何让它打开第二个文件?
static void Main()
{
CreateFolder();
string dst_fld = @"C:\csv\AllCsvFiles";
string src_fld = @"C:\mdb";
string dst_ext = ".mdb";
string[] mdb_array = Directory.GetFiles(src_fld, "*" + dst_ext, SearchOption.TopDirectoryOnly); // Get all mdb files from a folder
OleDbConnection cn = new OleDbConnection();
foreach (string tname in mdb_array)
{
cn.ConnectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0}",mdb_array);
try
{
cn.Open(); // open the connection
ExportFunction(cn, tname, dst_fld); // call function for export the csv file
}
finally
{
cn.Close();
}
}
GetCSVFiles();
DeleteFF();
}
答案 0 :(得分:1)
正如@ steve16351所指出的,您需要更改连接字符串,如下所示:
cn.ConnectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0}", tname);