Mein Projekt ist es, einige Attribute aus einem Ordner mit MDB in .csv-Dateien zu extrahieren. Alle Funktionen werden ordnungsgemäß verarbeitet, aber ich habe ein Problem mit dem ConnectionString.OleDbConnection ConnectionString, Problem beim Öffnen mehrerer Dateien
Wenn es zum ersten Mal ausgeführt wird, öffnet es die Verbindung für die erste Datei im Ordner und extrahiert die .csv-Datei und schließt die Verbindung. Alles gut bis jetzt.
Danach, wenn es für die zweite Datei im Ordner geht, öffnet es irgendwie wieder die ConnectionString für die erste Datei, aber die Funktion ruft die zweite .mdb-Datei. Wie kann ich die zweite Datei öffnen lassen?
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();
}
Was ist die Fehlermeldung, wenn 'cn.Open()' zum zweiten Mal ausgeführt wird? –
Der Ordner enthält Thesen Dateien: 27001DX.mdb 27002DX.mdb die Fehlermeldung: Die Microsoft Jet-Datenbankmodul die Eingabetabelle oder Abfrage ‚27002DX‘ nicht finden kann. Stellen Sie sicher, dass es existiert und dass der Name richtig geschrieben ist. – athanikos
Wenn zum zweiten Mal ausführen, Haltepunkte verwenden, \t \t cn.ConnectionString \t "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = C: \\ mdb \\ 27001DX.mdb" tname \t „C: \ \ mdb \\ 27002DX.mdb "\t String – athanikos